C++程序添加^M字符
C++ program adding ^M characters
我正在编辑一个 python 文件,我的程序遍历每一行,如果字符串“if”存在,它会向其附加注释。该程序确实有效,但它添加了 ^M,我再也看不到 GitHub 上的代码,因为它显示为原始文件。
看这个post这里https://unix.stackexchange.com/questions/32001/what-is-m-and-how-do-i-get-rid-of-it
我用了commend dos2linux然后运行我的程序,^M字符没有出现但是我还是看不到GitHub.
上的代码
这是有问题的代码
int main(){
ifstream myfile ("file.py", ios::binary);
ofstream newfile ("newfile.py", ios::binary);
string line;
string newline;
string yep = "if";
size_t check;
while ( getline(myfile,line)){
check = line.find("if");
if ( check != string::npos){
newline = line + "#If statement";
newfile << newline << '\n';
} else {
newline = line;
newfile << newline << '\n';
}
}
myfile.close();
newfile.close();
return 0;
}
事实证明,使用 unix2dos 的解决方案奏效了。最终发生的事情是所有附加的评论都向文件添加了另一个 .6MB,这反过来又使其超过 1MB。这就是为什么即使代码可以在本地轻松阅读,但您无法在 GitHub.
上查看的原因
感谢那些评论的人,感谢你们的努力。
我正在编辑一个 python 文件,我的程序遍历每一行,如果字符串“if”存在,它会向其附加注释。该程序确实有效,但它添加了 ^M,我再也看不到 GitHub 上的代码,因为它显示为原始文件。
看这个post这里https://unix.stackexchange.com/questions/32001/what-is-m-and-how-do-i-get-rid-of-it
我用了commend dos2linux然后运行我的程序,^M字符没有出现但是我还是看不到GitHub.
这是有问题的代码
int main(){
ifstream myfile ("file.py", ios::binary);
ofstream newfile ("newfile.py", ios::binary);
string line;
string newline;
string yep = "if";
size_t check;
while ( getline(myfile,line)){
check = line.find("if");
if ( check != string::npos){
newline = line + "#If statement";
newfile << newline << '\n';
} else {
newline = line;
newfile << newline << '\n';
}
}
myfile.close();
newfile.close();
return 0;
}
事实证明,使用 unix2dos 的解决方案奏效了。最终发生的事情是所有附加的评论都向文件添加了另一个 .6MB,这反过来又使其超过 1MB。这就是为什么即使代码可以在本地轻松阅读,但您无法在 GitHub.
上查看的原因感谢那些评论的人,感谢你们的努力。