程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> .NET網頁編程 >> .NET實例教程 >> .netFramework1.1下創建文件幾種方式的不同之處

.netFramework1.1下創建文件幾種方式的不同之處

編輯:.NET實例教程

using(StreamWriter sw = File.CreateText(@"d:\DefaultUTF8.txt"))
{
    sw.Write("私");
}

using(StreamWriter sw=new StreamWriter(@"d:\StreamUTF8.txt",
    false,System.Text.Encoding.UTF8))
{
    sw.Write("私");
}

using (System.IO.FileStream fs = System.IO.File.Create(@"d:\ByteUTF8.txt"))
{
    byte[] info = System.Text.Encoding.UTF8.GetBytes("私");
    fs.Write(info, 0, info.Length);
}


一直以來,我認為上面三種方式的結果是一樣的沒有差別,今天才知道不是那麼回事
呵呵,覺得這個問題比較幼稚的可以不必往下看了

運行結果1、3是一樣的,都是E7 A7 81
而2會多出一個ZERO WIDTH NO-BREAK SPACE,也就是EF BB BF
當我們需要通過Byte Order Mark來標示該文件的編碼方式的時候,請使用方法2

以上同樣適用於標明Big-Endian和Little-Endian的UNICODE

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved