文本去除标点符号问题
各位大大们好~我在将文本里的标点符号去掉的问题中遇到了问题
运算结果中为什么全部是乱码呢?
求大神解答
代码:
#include <iostream.h>
#include <fstream.h>
#include<ctype.h>
void del_space(char *str) //去除符号函数
{
int i, j;
for (i = j = 0; str[i] != '\0'; i++)
{
if (!ispunct(str[i]))
{
str[j++] = str[i];
}
}
str[j] = '\0';
}
void main()
{
ifstream myf("1.txt"); //打开文件1
ofstream myf1("2.txt"); //打开文件2
if (myf.fail()) //文件1打开失败
{
cout<<"file no exist!"<<endl;
return;
}
char txt[56];
myf>>txt;
while (!myf.eof() )
{
del_space(txt); //删除
cout<<txt<<endl;
myf1<<txt; //写到文件2
myf>>txt; //读入
}
}