⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 subject_57616.htm

📁 vc
💻 HTM
字号:
<p>
序号:57616 发表者:论坛小新 发表日期:2003-10-27 11:31:41
<br>主题:[求助]如何找出符合条件的字符串?
<br>内容:一个文本文件data.txt的内容如下:<BR>PAINT/COLOR,4<BR>FEDRAT/MMPM,2000.0000<BR>GOTO/44.4379,16.4428,33.3396<BR>GOTO/42.9387,13.9178,0.0000<BR>PAINT/COLOR,3<BR>我想读入文件内容,进行逐行判断,如果此行以&#34;GOTO/&#34;开始,就将它输出到另外一个文件data_out.txt中,请问怎么操作?
<br><a href="javascript:history.go(-1)">返回上页</a><br><a href=http://www.copathway.com/cndevforum/>访问论坛</a></p>
<hr size=1>
<blockquote><p>
回复者:论坛小新 回复日期:2003-10-27 11:33:12
<br>内容:恳请各位帮忙!
<br>
<a href="javascript:history.go(-1)">返回上页</a><br><a href=http://www.copathway.com/cndevforum/>访问论坛</a></p></blockquote>
<hr size=1>
<blockquote><p>
回复者:LuckGood 回复日期:2003-10-27 12:44:38
<br>内容:你可以将文本文件的内容全部读出到内存中,然后通过形如strstr的字串方法查找&#34;GOTO/&#34;及&#34;\r\n&#34;。代码还是自己实现的好。
<br>
<a href="javascript:history.go(-1)">返回上页</a><br><a href=http://www.copathway.com/cndevforum/>访问论坛</a></p></blockquote>
<hr size=1>
<blockquote><p>
回复者:论坛小新 回复日期:2003-10-27 12:56:23
<br>内容:&lt;BLOCKQUOTE&gt;引用“第2楼”所言<BR>&lt;Q&gt;你可以将文本文件的内容全部读出到内存中,然后通过形如strstr的字串方法查找&#34;GOTO/&#34;及&#34;\r\n&#34;。代码还是自己实现的好。&lt;/Q&gt;&lt;/BLOCKQUOTE&gt;<BR>第一步我通过fgets()函数可以实现{char str[256] ;<BR>fgets ( str , 255, pFile )};问题是第二步(判断此行是否含有GOTO/)如何实现?以及如何输出到另外一个文件中去?<BR>
<br>
<a href="javascript:history.go(-1)">返回上页</a><br><a href=http://www.copathway.com/cndevforum/>访问论坛</a></p></blockquote>
<hr size=1>
<blockquote><p>
<font color=red>答案被接受</font><br>回复者:golen 回复日期:2003-10-27 13:15:45
<br>内容:&nbsp;&nbsp;&nbsp;&nbsp;char str1[1000];<BR>&nbsp;&nbsp;&nbsp;&nbsp;memset(str1,0,sizeof(str1));<BR>&nbsp;&nbsp;&nbsp;&nbsp;CFile file;<BR>&nbsp;&nbsp;&nbsp;&nbsp;file.Open(&#34;data.txt&#34;,CFile::modeRead);<BR>&nbsp;&nbsp;&nbsp;&nbsp;file.Read(str1,sizeof(str1));&nbsp;&nbsp;&nbsp;&nbsp;<BR>&nbsp;&nbsp;&nbsp;&nbsp;CString str2=str1;<BR>&nbsp;&nbsp;&nbsp;&nbsp;int j=-1;<BR>&nbsp;&nbsp;&nbsp;&nbsp;char out1[1000];<BR>&nbsp;&nbsp;&nbsp;&nbsp;memset(out1,0,sizeof(out1));<BR>&nbsp;&nbsp;&nbsp;&nbsp;for(int i=0;i&lt;str2.GetLength();i++)<BR>&nbsp;&nbsp;&nbsp;&nbsp;{<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;j=str2.Find(&#34;GOTO/&#34;,i);<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if(j&gt;=0)<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;int j1=str2.Find(13,j); <BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;char out2[100];<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;memset(out2,0,sizeof(out2));<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;CString s1=str2.Mid(j,j1-j);<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;strcpy(out2,s1); <BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;strcat(out1,out2);<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;sprintf(out1,&#34;%s%c%c&#34;,out1,13,10);<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;i=j;<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<BR>&nbsp;&nbsp;&nbsp;&nbsp;}<BR>&nbsp;&nbsp;&nbsp;&nbsp;file.Close(); <BR>&nbsp;&nbsp;&nbsp;&nbsp;CString sss=out1;<BR>&nbsp;&nbsp;&nbsp;&nbsp;char in1[1000];&nbsp;&nbsp;&nbsp;&nbsp;<BR>&nbsp;&nbsp;&nbsp;&nbsp;memset(in1,0,sizeof(in1));<BR>&nbsp;&nbsp;&nbsp;&nbsp;sprintf(in1,&#34;%s&#34;,sss);<BR>&nbsp;&nbsp;&nbsp;&nbsp;file.Open(&#34;in1.txt&#34;,CFile::modeWrite|CFile::modeCreate);<BR>&nbsp;&nbsp;&nbsp;&nbsp;file.Write(in1,sizeof(in1));<BR>&nbsp;&nbsp;&nbsp;&nbsp;file.Close(); <BR><BR><BR><BR>//程序粗糙,仅供参考
<br>
<a href="javascript:history.go(-1)">返回上页</a><br><a href=http://www.copathway.com/cndevforum/>访问论坛</a></p></blockquote>
<hr size=1>
<blockquote><p>
回复者:论坛小新 回复日期:2003-10-27 13:44:48
<br>内容:谢谢golensoft!<BR>还有没有其他更好的方法!<BR>最好用C语言!<BR>2003-10-27 13:46:28

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -