VC中读取txt文件中的内容求助

txt文件内容为:--------------------------------------------------V:1W:2:Z:3V:1W:2:Z:3V:1W:2... txt文件内容为:
-------------------------
-------------------------
V:1 W:2:Z:3
V:1 W:2:Z:3
V:1 W:2:Z:3
V:1 W:2:Z:3
V:1 W:2:Z:3
V:1 W:2:Z:3
V:1 W:2:Z:3
V:1 W:2:Z:3
V:1 W:2:Z:3

我想用VC编程,怎么把Z这列对应的数读取出来啊
展开
 我来答
心翼_Fly
2014-03-13
知道答主
回答量:16
采纳率:0%
帮助的人:5.7万
展开全部
读取每行内容,查找Z,获取后面的数据
CString strFileNamePath = "..//xxx.txt";
int nFileNum = 0;
CStdioFile myFile;
CStringArray strPDFFileName;
if(myFile.Open(strFileNamePath,CFile::modeRead))
{
//读取;
CString strLine;
while(myFile.ReadString(strLine))
{
int nPos=strLine.Find(_T("Z"));
CString strFileName = strLine.Mid(nPos+2,1);
strPDFFileName.Add(strFileName);
nFileNum++;
}
myFile.Close();
}
追问
非常感谢,我想问下,还有两个问题,就是这个“:”后面可能会空1格才有数字,有的会空两格才有数字,怎么才能使取到的是数呢(“:”后面的空格不一样,取出来也会有空格)。但是我还想吧取出来的CString数据转化为int或者double型,这应该怎么处理呢?
追答
将CString strFileName = strLine.Mid(nPos+2,1);换成
int nLen = strLine.GetLength()-nPos;
CString strFileName;
for( int i=0; i<nLen; i++)
{
CString strChar = strLine.Mid(nPos+1+i,1);
for( int j=0; j<=9; j++)
{
int nChar = atoi(strChar); //CString转int
if( nChar == j )
{
strFileName += strLine.Right( nLen-nPos-1-i );
//使用atoi转换为int型
}
}
}
Rankabc
2014-03-12 · TA获得超过3561个赞
知道大有可为答主
回答量:3705
采纳率:59%
帮助的人:1069万
展开全部
fscanf(fp,"V: 1 W: 2: Z: %d\n",&n);
追问
while (file.ReadString(strText))
{
while((nPos1 = strText.Find('Z')) >= 1)
{
Va = strText.Mid(nPos1+2, nPos1+4);
pListBox->AddString(Va);
}
}
这样行吗,但还是读不出来,界面不响应啊。。。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
mazhao141
2016-01-04 · 超过22用户采纳过TA的回答
知道答主
回答量:56
采纳率:0%
帮助的人:32.3万
展开全部
CreatFile
ReadFile
CloseFile
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式