如何给内存中的一块数据生成文件名?

fei_ben 2000-06-09 09:23:00
可以creat一个临时文件放内存中的一块数据,但我现在不想生成文件,而只是想使这块数据有一个文件名,以便fOpen这类的函数调用,如何解决,是否有WinAPI或C++类库可以调用??
...全文
231 11 打赏 收藏 转发到动态 举报
写回复
用AI写文章
11 条回复
切换为时间正序
请发表友善的回复…
发表回复
hbd 2000-08-11
  • 打赏
  • 举报
回复
如果这个问题解决了,不妨告诉我以下!谢谢
halfdream 2000-06-12
  • 打赏
  • 举报
回复
SCUM 说的东西好象有点问题。呵呵,让人很怀疑。
重定向流的钩子是什么东东?
fei_ben, tmpnam() 不是那样用的,它的意思只是产生一个不于其它文件名称重复的字符串,用它可以作为文件名。 至于后来该干什么你还得干什么。

可以象Kenny 说的那样做。
但我想你是不是真的需要使用它?
kxy 2000-06-12
  • 打赏
  • 举报
回复
SCUM知道一个名词就瞎掰:)
Kenny 2000-06-12
  • 打赏
  • 举报
回复
请使用:CreateFile()创建一个临时文件;
再用CreateFileMapping()创建一个内存映象文件;
最后是MapViewOfFile()映射该地址。
只是一定要仔细看这三个API的帮助哟。
kxy 2000-06-12
  • 打赏
  • 举报
回复
什么叫给内存生成文件名??
你是不是半路出家写程序的:)
思路混乱!
kxy 2000-06-12
  • 打赏
  • 举报
回复
可以使用LoadFromFile的都有相应的LoadFromStream,
fei_ben 2000-06-12
  • 打赏
  • 举报
回复
To:kxy
这是一个尊严问题,我不是半道出家学编程:-)。
TO:jansenzhu
你能不能说的详细一点?
fei_ben 2000-06-12
  • 打赏
  • 举报
回复
给SCUM加200分,我刚来不久,不知道怎么加。
TO:kxy:比如说,在一个大文件中有一段数据是RTF格式的文本,我想把这段数据析出显示,用C++Builder 的TRichedit的LoadFromFile()就可以了,不需要自己研究RTF格式了,所以,我考虑为这段数据生成文件名,但我有不希望有写磁盘的操作,于是产生这么搞的一个问题。我知道C++的tmpnam函数可以生成文件名,而不实际生成文件,但当我把数据写入这个文件是,死机了,照函数手册,这个文件应该可以用fOpen()之类的函数操作,我该怎么办???
多谢两位的回答。
茂奇软件 2000-06-12
  • 打赏
  • 举报
回复
Do you have try the IFS hook.
I think it is a hard job but
can solve the problem.
Good lucky for every one.
Jansen Zhu.
kxy 2000-06-11
  • 打赏
  • 举报
回复
你为何一定用fopen,直接对内存操作不就行了.
SCUM 2000-06-11
  • 打赏
  • 举报
回复
如果OS支持输出流重定向, 则可轻取之.
但是在 Windows 下, 好像没有现成的方法可用.
一定要这样的话, 只好自己写一个重定向流的钩子了.

69,369

社区成员

发帖
与我相关
我的任务
社区描述
C语言相关问题讨论
社区管理员
  • C语言
  • 花神庙码农
  • 架构师李肯
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧