char buf[8];
CString buffer;
char temp[5];
int k=0;
do
{
...//用于不断刷新buf的循环部分
++k;
::itoa(k,temp,10);
buffer=' '+temp+'=';
buffer+=buf;
buffer+="\x0d\x0a";
outcomeFile.Write(buffer,buffer.GetLength());
}while(...);列出部分输出到文件中的内容:
鴇20020312烫棠菾_
鴇20020315烫棠菾_
鴇20020316烫棠菾_
鴇20020411烫棠菾_
鴇20020514烫棠菾_
...问题:为什么除buf的内容输出正确外,其他部分会产生乱字符???如何避免???
CString buffer;
char temp[5];
int k=0;
do
{
...//用于不断刷新buf的循环部分
++k;
::itoa(k,temp,10);
buffer=' '+temp+'=';
buffer+=buf;
buffer+="\x0d\x0a";
outcomeFile.Write(buffer,buffer.GetLength());
}while(...);列出部分输出到文件中的内容:
鴇20020312烫棠菾_
鴇20020315烫棠菾_
鴇20020316烫棠菾_
鴇20020411烫棠菾_
鴇20020514烫棠菾_
...问题:为什么除buf的内容输出正确外,其他部分会产生乱字符???如何避免???
for(int kk=0;kk<8;kk++)
buf[kk]=0;
另,字符串是"\0"结束的,要将最后一位如:buf[7]=0;
将 buffer=' '+temp+'='; 改为如下:
buffer=" ";
buffer+=temp;
buffer+="=";
这部分输出正确了!但是 buffer+="\x0d\x0a"; 却仍然输出乱字符!!!另:
我以前也这样写过,程序同样编译通过,且输出正确!!!
我想这里好象只是需要一个字符指针,单引号或双引号应该没什么区别。
无效!
这一句会不会有问题,buffer是CString 可以这样用?
outcomeFile.Write(buffer.GetBuffer(),buffer.GetLength());
buffer.ReleaseBuffer();