能力值:
( LV4,RANK:50 )
|
-
-
2 楼
WriteFile之后,文件指针已经向后移动了,如果需要读取刚才写入的数据,需要把指针向前移动。。移动的大小是你刚才写入数据的大小
用到的API为SetFilePointer
|
能力值:
( LV2,RANK:10 )
|
-
-
3 楼
SetFilePointer这个函数我知道,但我现在要的是怎么能在不关闭文件的情况下刷新文件实现?
|
能力值:
(RANK:1010 )
|
-
-
4 楼
使用内存映射
写入的过程只需要写到对应的虚拟空间就行了,
然后FlushViewOfFile刷新数据到磁盘文件,
读取的时候只需要读取对应内存空间
可以参考我的
<<基于Windows的二级文件系统开发>>中的system.cpp 中相应的代码
|
能力值:
( LV4,RANK:50 )
|
-
-
5 楼
没怎么看懂你的意思
|
能力值:
( LV4,RANK:50 )
|
-
-
6 楼
呵呵, 北极星的意思就是:
hFile = CreateFile(ofn.lpstrFile,GENERIC_READ,FILE_SHARE_READ,
NULL,OPEN_EXISTING,FILE_ATTRIBUTE_NORMAL,NULL);
hMapFile = CreateFileMapping(hFile,NULL,PAGE_READONLY,0,0,NULL);
pMapping = MapViewOfFile(hMapFile,FILE_MAP_READ,0,0,0);
利用pMapping在内存空间中读写, 最后一次写到文件中
而你的方法,和 c 里面的fopen 然后 fprintf 是一样的. 既直接打开读写.
|
能力值:
( LV2,RANK:10 )
|
-
-
7 楼
那么读和写怎么操作?还是用ReadFile和WriteFile吗?
|
|
|