作者fphoenix923 (Phoenix)
看板C_Sharp
標題Re: [問題] streamwriter 問題
時間Wed Dec 17 20:45:25 2008
※ 引述《sec2 (sec2)》之銘言:
: ※ 引述《MacPerson (香腸)》之銘言:
: : 各位好!! 又是我~ ~
: : 我用streamwriter將檔案寫入text檔中,用英文寫入一切OK,但要是夾雜中文
: : 會有亂碼,請問有其他解決辦法嗎 ?
: : 程式碼:
: : using(streamwriter sw = new streamwriter(output.txt) )
: : {
: : sw.writerline("中文{0}",var);
: : }
: : 這樣會有問題
: : using(streamwriter sw = new streamwriter(output.txt) )
: : {
: : sw.writerline(var);
: : }
: : 這樣則可以跑出結果
: 因為預設使用 Unicode 輸出
: 請記得在輸出文字檔案的最前面加上 0xFEFF
: 用筆記本打開時才會判斷正確使用 Unicode 編碼
自己測試的結果,StreamWriter預設的編碼是UTF-8,
在我的電腦上測試的狀況,是不用改變什麼直接用預設值即可。
如果要改變文字檔的編碼,應該可以利用指定Encoder的方式,
而不用直接操作位元值。
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 123.193.13.226
推 MacPerson:請問可以給我個範例嗎 12/18 03:10
→ MacPerson:這樣我比較有FU 12/18 03:10
→ MOONRAKER:我用 new System.IO.StreamWriter(fname, false, 12/18 08:06
→ MOONRAKER: System.Text.Encoding.Default) 12/18 08:06
→ fphoenix923:我用跟上面一樣的程式跑 12/18 23:05
→ MOONRAKER:哈 上次在VB版給一個新手一樣的程式碼 他居然說不太懂 12/19 04:19
→ MOONRAKER:想說是不是我●● 這也可以不懂 現在終於確定我還正常 12/19 04:20
→ MacPerson:謝寫各位!! 我會去試試!! 12/20 14:05