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

📄 subject_51823.htm

📁 vc
💻 HTM
字号:
<p>
序号:51823 发表者:sososo 发表日期:2003-09-04 16:54:05
<br>主题:万分火急,要交项目拉!!!关于文件读写
<br>内容:&nbsp;&nbsp;&nbsp;&nbsp;CFile file;<BR>&nbsp;&nbsp;&nbsp;&nbsp;if(file.Open(_T(&#34;\\temp\\TechPara2.bin&#34;),CFile::modeRead))<BR>&nbsp;&nbsp;&nbsp;&nbsp;{<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;file.Read(&amp;m_TechPara,sizeof(m_TechPara));<BR><BR>&nbsp;&nbsp;&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;else<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;file.Open(_T(&#34;\\temp\\TechPara2.bin&#34;),CFile::modeCreate);<BR>&nbsp;&nbsp;&nbsp;&nbsp;<BR>// 为什么对CString操作时出错?<BR>&nbsp;&nbsp;&nbsp;&nbsp;m_TechPara.szOnPress += &#34;{&#34;; //此处出错<BR>&nbsp;&nbsp;&nbsp;&nbsp;m_TechPara.szOnTime += &#34;{&#34;;<BR>&nbsp;&nbsp;&nbsp;&nbsp;m_TechPara.szShotPosition += &#34;{&#34;;<BR>&nbsp;&nbsp;&nbsp;&nbsp;m_TechPara.szShotPress += &#34;{&#34;;<BR>&nbsp;&nbsp;&nbsp;&nbsp;m_TechPara.szShotSpeed += &#34;{&#34;;<BR>
<br><a href="javascript:history.go(-1)">返回上页</a><br><a href=http://www.copathway.com/cndevforum/>访问论坛</a></p>
<hr size=1>
<blockquote><p>
回复者:iamhere 回复日期:2003-09-04 17:17:03
<br>内容:m_TechPara.szOnPress是什么类型的变量,只有CString型的才可以象你这么用。<BR><BR>如果是运行时报错,那么m_TechPara.szOnPress有没有预先初始化?<BR><BR>如果是CString类型,那么请贴出你的错误信息。
<br>
<a href="javascript:history.go(-1)">返回上页</a><br><a href=http://www.copathway.com/cndevforum/>访问论坛</a></p></blockquote>
<hr size=1>
<blockquote><p>
回复者:sososo 回复日期:2003-09-04 17:29:41
<br>内容:是CString类型的。<BR>报错:Assertion Failed: XiaWeiJi: File strcore.cpp, Line 182<BR>预先初始华?,没有,我从文件中读出来的。文件存储着结构体 ,里面的CString有些是没有初始化的。
<br>
<a href="javascript:history.go(-1)">返回上页</a><br><a href=http://www.copathway.com/cndevforum/>访问论坛</a></p></blockquote>
<hr size=1>
<blockquote><p>
回复者:sososo 回复日期:2003-09-04 17:43:21
<br>内容:我是OnInitDialog中进行一下操作的。<BR><BR>&nbsp;&nbsp;&nbsp;&nbsp;m_TechPara.szOnPress.Format(_T(&#34;&#34;));<BR>&nbsp;&nbsp;&nbsp;&nbsp;m_TechPara.szOnTime.Format(_T(&#34;&#34;));<BR>&nbsp;&nbsp;&nbsp;&nbsp;m_TechPara.szShotPress.Format(_T(&#34;&#34;));<BR>&nbsp;&nbsp;&nbsp;&nbsp;m_TechPara.szShotPosition.Format(_T(&#34;&#34;));<BR>&nbsp;&nbsp;&nbsp;&nbsp;m_TechPara.szShotSpeed.Format(_T(&#34;&#34;));<BR><BR>&nbsp;&nbsp;&nbsp;&nbsp;CFile file;<BR>&nbsp;&nbsp;&nbsp;&nbsp;if(file.Open(_T(&#34;\\temp\\TechPara.bin&#34;),CFile::modeRead))<BR>&nbsp;&nbsp;&nbsp;&nbsp;{<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;file.Read(&amp;m_TechPara,sizeof(m_TechPara));<BR>&nbsp;&nbsp;&nbsp;&nbsp;}<BR>&nbsp;&nbsp;&nbsp;&nbsp;else<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;file.Open(_T(&#34;\\temp\\TechPara.bin&#34;),CFile::modeCreate);<BR>&nbsp;&nbsp;&nbsp;&nbsp;<BR><BR>&nbsp;&nbsp;&nbsp;&nbsp;m_TechPara.szOnPress += &#34;{&#34;; //出错!!!<BR>&nbsp;&nbsp;&nbsp;&nbsp;m_TechPara.szOnTime += &#34;{&#34;;<BR>&nbsp;&nbsp;&nbsp;&nbsp;m_TechPara.szShotPosition += &#34;{&#34;;<BR>&nbsp;&nbsp;&nbsp;&nbsp;m_TechPara.szShotPress += &#34;{&#34;;<BR>&nbsp;&nbsp;&nbsp;&nbsp;m_TechPara.szShotSpeed += &#34;{&#34;;<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>
<font color=red>答案被接受</font><br>回复者:iamhere 回复日期:2003-09-04 17:48:28
<br>内容:file.Read(&amp;m_TechPara,sizeof(m_TechPara));<BR>而m_TechParam结构中居然有字符串!!!<BR>这种用法是不对的,sizeof取出的结构大小根本就不对,<BR>其结构成员中的CString也是完全不对的,你后面对它再赋值自然会报错!<BR><BR>解决方法是将那些CString改成字符串数组,<BR>然后使用strcat在其后增加内容
<br>
<a href="javascript:history.go(-1)">返回上页</a><br><a href=http://www.copathway.com/cndevforum/>访问论坛</a></p></blockquote>
<hr size=1>
<blockquote><p>
回复者:devil0810 回复日期:2003-09-05 09:00:39
<br>内容:楼上说的对,CString是一个类,sizeof取出的不是字符串的大小,而是整个类的大小,其中包括了很多东西。<BR>该成字符数组或者指针就应该可以了<BR>如果必须要用CString的话可以在最后把字符转换成CString就行<BR><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>
回复者:sososo 回复日期:2003-09-08 11:46:01
<br>内容:对,CString本身大小是可变的。根本不能用sizeof来确定读文件的大小<BR>我用了数组,问题就没有了。<BR>谢谢各位大侠的指导。
<br>
<a href="javascript:history.go(-1)">返回上页</a><br><a href=http://www.copathway.com/cndevforum/>访问论坛</a></p></blockquote>

⌨️ 快捷键说明

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