c-VC/C++怎样让打开着的txt文件 实时刷新 写入的数据信息

问题描述

VC/C++怎样让打开着的txt文件 实时刷新 写入的数据信息

怎样让打开着的txt文件 实时刷新 写入的数据信息,用c/VC/C++实现

解决方案

你用ReadDirectoryChange() API
获取文件改变事件,然后这个时候重新读取文件内容,然后刷新显示。
nodepad++类似处理。

解决方案二:

如果你坚持使用文本文件,这个没办法实时,只能是不断打开文件,查询有没有新的数据,然后添加。

解决方案三:

你说的的打开着的是个什么意思呢,如果是被系统记事本打开着,估计不能实现,你应该自己createfile占用它,然后用writefile在文件末尾写入数据

解决方案四:

如果是共享的读/写,如 UltraEdit 一样,则再次打开是没有问题的。
但如果是被独占,则无法再次打开,后续的读/写就不可能实现的。

如果没有被其它应用打开,只有自己的应用打开,实在的读/写肯定是没有问题的。但还是不建议频繁的打开/关闭文件,此处需要注意实现的技巧。

解决方案五:

在C中,当使用标准库stdio.h时需要刷新缓存区,在Windows上flush()可以将缓存立即写到文件中,但是这个在linux上不行
使用系统调用读写文件时不存在缓冲,数据是即时写入文件的

解决方案六:

使用 fflush() 函数,每写一次就执行一次。我之前都是这么做的

时间: 2025-01-20 17:07:06

c-VC/C++怎样让打开着的txt文件 实时刷新 写入的数据信息的相关文章

VB打开与保存txt文件的方法_vb

本文实例讲述了VB打开与保存txt文件的方法.分享给大家供大家参考.具体如下: Private Sub cmdsave_Click() Dim filelocation As String ' loads save as box commondialog1.ShowSave filelocation = commondialog1.FileName ' append saves over file if it assists Open filelocation For Append As #1

Ubuntu解决打开windows记事本.txt文件乱码的方法

这个问题好像是ubuntu升级到9.04才出现的,以前有很多小说还是自己的记事都是.TXT文件的ubuntu 在ubuntu下打开.TXT文件,中文显示为乱码,在这找到了解决的办法: 终端输入gconf-editor调出gconf-edit PS:输入gconf-editor即可,前面不需要加Sudo 依次点开 apps->gedit-2->preferences->encodings 中的auto-detected 在双击弹出对话框中加入GB18030,GBK,GB2312,然后将GB

WinForm中 禁止打开多个相同文件的问题 现在就30分了 以后可以加

问题描述 C#WinForm的问题:如何禁止打开正打开的程序:比如:我在C#的Form中点一个Button就用记事本打开了一个叫"a.txt"的文件要求:只要这个Form还在运行我再点这个Button就不能再打开"a.txt"这个文件(因为它已经是打开的了)并不是说打开了一个txt文件后就不能再打开其它所有的txt文件只是那个已经被打开的(比如上面的a.txt)不能再次被打开(所以在程序中监测是否打开了记事本发现是就禁止这样是不符合要求的)我的意思应该明白的吧?我也

vc中的标准打开文件对话框问题?

问题描述 VC中的标准打开文件对话框中,文件类型选项里面有一个"所有文件(*.*)",怎样把它去掉? 解决方案 解决方案二:CStringfilePath;CFileDialogdlg(true,0,0,OFN_HIDEREADONLY|OFN_OVERWRITEPROMPT,0,0,0);if(IDOK==dlg.DoModal()){filePath=dlg.GetPathName();}解决方案三:打开文件对话框都是自动生成的,请问我应该在什么地方去改呢?解决方案四:yasmon

VC WinExec打开指定程序或者文件的方法_C 语言

⑴ 函数原型: UINT Win Exec(LPCSTR lpCmdLine, UINT uCmdShow); ⑵ 参数: lpCmdLine:指向一个空结束的字符串,串中包含将要执行的应用程序的命令行(文件名加上可选参数). uCmdShow:定义Windows应用程序的窗口如何显示,并为CreateProcess函数提供STARTUPINFO参数的wShowWindow成员的值. ⑶ 返回值: 若函数调用成功,则返回值大于31.若函数调用失败,则返回值为下列之一: ① 0:系统内存或资源已耗

vc zip,unzip类 解压.docx文件内容是乱码,求大神解答啊

问题描述 vc zip,unzip类 解压.docx文件内容是乱码,求大神解答啊 目前只有.docx文件解压有问题,为什么会这样,求大神帮忙解答下,我没有c币,谢谢好心人了!!!! 解决方案 可以换成ZLib开源代码来试试,很不错,也很简单 解决方案二: 可以换成ZLib开源代码来试试,很不错,也很简单 解决方案三: 我发现.odcx文件用office可以打开,我用的wps,呵呵,找了一天原因,真坑爹 还是谢谢你的回答

vc++-VC++ 6.0文本文件分行读取MFC读文件的问题

问题描述 VC++ 6.0文本文件分行读取MFC读文件的问题 VC++ 6.0文本文件分行读取,怎么样返回上一行,getline怎么才能往前读取行呢? 解决方案 vector string; ifstream inout; inout.open(文件名,ios::in); while(inout.getline(nextline, sizeof(nextline))) { temp_str = nextline; v.pushback(temp_str); } inout.close(); in

VC++在TXT文件指定位置追加内容的方法_C 语言

本文实例讲述了VC++操作文本文件的方法,实现在txt文件指定位置插入内容.对于VC++爱好者有一定的学习参考价值. 主要功能代码如下: void CGoToFileDlg::OnPaint() { if (IsIconic()) { CPaintDC dc(this); SendMessage(WM_ICONERASEBKGND, (WPARAM) dc.GetSafeHdc(), 0); int cxIcon = GetSystemMetrics(SM_CXICON); int cyIcon

qt txt文件 中文 乱码-Qt5中用QTextStream向txt文件中写入中文字符串,打开文件时出现乱码

问题描述 Qt5中用QTextStream向txt文件中写入中文字符串,打开文件时出现乱码 在网上查了一些关于Qt中文乱码的问题,主要是因为机器的编码问题QTextCodec::setCodecForLocale(QTextCodec::codecForName(""GBK""));QTextCodec::setCodecForCStrings(QTextCodec::codecForName(""GBK"")); QText