平台转化


StreamReader sr = new StreamReader(path, Encoding.ASCII);
string str2 = sr.ReadToEnd();
string str1 = str2.Replace("\r\n", "\n");
sr.Close();
FileStream fs = new FileStream(path, FileMode.Create, FileAccess.ReadWrite);
StreamWriter sw = new StreamWriter(fs, Encoding.ASCII);
sw.Write(str1);
sw.Close();
fs.Close();
在MAC,Windows,ASCII平台下,可以说没有ASCII编码,ASCII就是指UTF-8。
所以我们在NUIX下的文件放到MAC,Windows时最好将其转化为ASCII。
因为转成ASCII编码时,在放到任何平台下都不会出错。(对程序运行时而言,在文件显示中可以说并没有ASCII编码格式)
在NUIX平台UTF-8编码下执行,将会将ASCII转化为UTF-8,平台不变
在Windows平台下UTF-8编码执行,将转化为NUIX平台,编码格式不变。
在MAC平台下UTF-8编码执行,将平台,编码格式不变。
事实说明(ASCII就是UTF-8)

在NUIX平台UTF-8-BOM编码下执行,将会将UTF-8-BOM转化为UTF-8,平台不变
在MAC平台下UTF-8-BOM编码执行,将会将UTF-8-BOM转化为UTF-8,平台不变
在Windows平台下UTF-8-BOM编码执行,将转化为NUIX平台,编码格式变UTF-8

在NUIX平台UCS-2 BE BOM编码下执行,将会将UCS-2 BE BOM转化为UTF-8,平台不变
在MAC平台下UTF-8-BOM编码执行,将会将UCS-2 BE BOM转化为UTF-8,平台不变
在Windows平台下UTF-8-BOM编码执行,将转化为NUIX平台,编码格式变UTF-8


在NUIX平台UCS-2 LE BOM编码下执行,将会将UCS-2 LE BOM转化为UTF-8,平台不变
在MAC平台下UCS-2 LE BOM编码执行,将会将UCS-2 LE BOM转化为UTF-8,平台不变
在Windows平台下UCS-2 LE BOM编码执行,将转化为NUIX平台,编码格式变UTF-8

StreamReader sr = new StreamReader(path, Encoding.Unicode);
string str2 = sr.ReadToEnd();
string str1 = str2.Replace("\n", "\r\n");
sr.Close();
FileStream fs = new FileStream(path, FileMode.Create,FileAccess.ReadWrite);
StreamWriter sw = new StreamWriter(fs,Encoding.ASCII);
sw.Write(str1);
sw.Close();
fs.Close();

Windows, MAC平台不可以在转,否则就出乱码。在NUIX平台则会变为windows


BULK INSERT CSVTable28 FROM 'E:\current20151-100\Magic_Tmall_Transaction_20170117_OMS_36.csv'
WITH( FIELDTERMINATOR = '''$''',FIRSTROW=1)
BULK INSERT 此方法先找FIELDTERMINATOR分隔符再找换行符ROWTERMINATOR [ = 'row_terminator' ]


很简单 \r 是MAC平台换行
\n是NUIX平台换行
\r\n是Windows平台换行
要怎么转自己看着办


XML序列化时候,时间格式小心啦
在读取文件时候如果有时间格式的话,将会读出计算机底层认识的辨别符号,T

 

posted @   晓志  阅读(275)  评论(2编辑  收藏  举报
努力加载评论中...
点击右上角即可分享
微信分享提示