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这列对应的数读取出来啊 展开
-------------------------
-------------------------
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这列对应的数读取出来啊 展开
展开全部
读取每行内容,查找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();
}
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型
}
}
}
展开全部
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);
}
}
这样行吗,但还是读不出来,界面不响应啊。。。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
CreatFile
ReadFile
CloseFile
ReadFile
CloseFile
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询