c++-C++/MFC 文本文件读取

问题描述

C++/MFC 文本文件读取

由于电脑断电,文本文件异常保存,保存的文件如下:(图1为二进制,图二为 记事本)

文件表现中间出现 00,
CStdioFile ReadString 时读到蓝色标记处,即 00 位置,认为文件已经结束,下面的内容无法读取,请问这种情况应如何处理!

解决方案

用c++标准库ifstream读试试,getline
http://en.cppreference.com/w/cpp/string/basic_string/getline

解决方案二:

00 00 ……
处本应该是空格
在线等,请高手指点。

解决方案三:

用CFile读出来了,谢谢

解决方案四:

以binary的形式打开一个文件,应该不会。如果还不行,看看这个函数feof()

解决方案五:

以流的方式来读取,读取先先判断文件大小,然后读取指定大小的字节流

时间: 2024-10-02 08:43:25

c++-C++/MFC 文本文件读取的相关文章

c++-MFC 文本文件如何实现修改指定行

问题描述 MFC 文本文件如何实现修改指定行 void EditView::WriteInTitle(CString strName, CString lpsz) { CFile WriteFile; WriteFile.Open(strName, CFile::modeWrite | CFile::modeRead | CFile::typeBinary); lpsz = lpsz + "rn"; LPCTSTR s = lpsz.GetBuffer(lpsz.GetLength()

一个有关MFC文本文件数据按行去重复的问题

问题描述 一个有关MFC文本文件数据按行去重复的问题 VC++6.0 读取文本文件中多行数据,然后去掉重复的行,提取数据到新的文件的方法是什么? 解决方案 读取到set/vector,然后去重复http://blog.csdn.net/zengraoli/article/details/39081707 解决方案二: 按行读取没文件,将读取到的每一行保存到一个set中,因为set中的元素必须不一样,因此你不必再做去重操作,读取完毕之后你写回到文件中即可.http://www.cplusplus.

读文件-MFC一次性读取一个文件中所有字符

问题描述 MFC一次性读取一个文件中所有字符 我想一次性读取文件中的字符串,但是我读取的时候有问题,我的代码如下 file.Open(filePath,CFile::modeRead|CFile::typeBinery){ char * A = new char[file.GetLength()]; file.Read(A,file.GetLength()); CString strResult(A); delete A; return strResult.AllocSysString(); }

字符集-MFC 如何读取UTF-8文件

问题描述 MFC 如何读取UTF-8文件 项目是UNICODE的字符集,现在想读取UTF-8文件并显示UTF-8文件如何编写代码,请各位大神解答 最好具体详细点,本人菜鸟一枚 解决方案 https://social.microsoft.com/Forums/de-DE/ec90ba39-be88-4060-8a0d-c3228e91e0f3/mfcutf8 去看看 解决方案二: 先把文件读到内存里,然后unicode转成utf-8字符流:http://blog.csdn.net/iefreer/

mfc-图像处理之MFC如何读取在客户区画的图形数据

问题描述 图像处理之MFC如何读取在客户区画的图形数据 看了杨淑莹的图像模式识别-VC++技术实现,发现她的程序是在画图的时候 用一个10*10矩形框作为画笔的大小,然后用for把数据循环存到*(m_pData+LineBytes*(height-y)+x)=0:里面的 问题:那能不能先用CPen来画图,然后读取像素呢,或者有没有更好的 思路,因为我觉得这样存储有点费劲,谢谢大神们!^_^ 解决方案 能不能先用CPen来画图?答案肯定是能,关键是你绘制在哪里?还是要一块内存区域吧,如果是为什么不

C++从文本文件读取数据到vector中的方法_C 语言

前言 大家应该都只奥vector(向量)是 C++中的一种数据结构,确切的说是一个类.它相当于一个动态的数组,当程序员无法知道自己需要的数组的规模多大时,用其来解决问题可以达到最大节约空间的目的.这篇文章介绍的是C++从文本文件读取数据到vector中的方法,下面话不多说,直接来看示例代码吧. 如题,要将如下文本文件读进vector中 示例代码如下 #include <iostream> using namespace std; #include <cmath> #include

c++-C++ 文本文件的读取问题

问题描述 C++ 文本文件的读取问题 请问怎样将大学英语B 4.0 2.67 高等数学下 6.0 3.67 离散数学上 2.5 3.67 金工实习 1.0 3.33 思修 3.0 3.33 普通物理实验上 1.5 4.00 普通物理上 4.0 3.67 程序设计实训 1.0 3.33 这种类型的数据分别读取到class Course{public: char name[20]; float credit; float mark;}courses[N];这种类的每个成员变量中. 解决方案 你这个是

mfc-关于MFC读取外部程序的ListControl内容

问题描述 关于MFC读取外部程序的ListControl内容 MFC程序读取其他应用程序的Listcontrol内容时,只能读取到目标软件Listcontrol的部分列内容.但是读取任务管理器时,是正常的,我也尝试过读取一些其他软件,都是正常的.代码是我在网上查的比较经典的一种方法.代码如下: DWORD pid; HANDLE process; LVITEM lvi, *_lvi; char firstItem[512], secondItem[512], thirdItem[512], fo

PowerShell读取文本文件指定行内容的方法_PowerShell

本文介绍一个PowerShell中如何一步到位的获取到一个文本文件的第N行.比如一个文本文件,它有1000行,我想把第500行的内容直接取出来的,最简单的方法是通过PowerShell来实现. 在PowerShell中,可以通过Get-Content这个cmdlet来获取文本文件的内容.Get-Content将一个文本文件读取到一个数组中,每一个数组元素就是文件的一行内容.比如一个文本文件内容如下: 复制代码 代码如下: 111 222 333 那么,使用Get-Content获取到一个数组,数