Qt5 写DOS格式文件

问题:使用QFile写文件时,发现生成文件为UNIX格式,即换行符为'\n'而不是win32标准的'\r\n',在windows系统下没有换行

解决:使用QFile的open方法打开文件时,参数加入QIODevice::Text,这个参数的功能为,在读文件时,换行符自动转换为'\n'(即UNIX格式),在写文件时,换行符转换为本地编码方式,windows下为'\r\n'。

 

示例:

QFile file("1.txt");
QString a = "a";
QString b = "b";
QString c = "c";

if(file.open(QIODevice::WriteOnly|QIODevice::Text))
{
	QTextStream write(&file);
	write << a<< "\n";
	write << b<< "\n";
	write << c<< "\n";
	file.close();
}

则1.txt内容为:

a

b

c

你可能感兴趣的:(unix,dos,qt,文本)