文字コードを指定して文字列をファイルに保存する (文字コードを指定してテキストファイルに保存する) - C#
文字コードを指定してテキストをファイルに保存する場合は、System.Text.Encodingクラスを用いてエンコーディングを指定して保存します。
Shift-JISで保存する場合
using System.IO;
public void WiteFile(){
string filePath = "c:\data\text.txt";
string text ="AAA BBB\r\n CCC\r\n";
StreamWriter sw = new StreamWriter(filePath, false, Encoding.GetEncoding("shift_jis"));
sw.Write(text);
sw.Close();
}
EUCで保存する場合
using System.IO;
public void WiteFile(){
string filePath = "c:\data\text.txt";
string text ="AAA BBB\r\n CCC\r\n";
StreamWriter sw = new StreamWriter(filePath, false, Encoding.GetEncoding("euc-jp"));
sw.Write(text);
sw.Close();
}
EUCで保存する場合 (WriteLineを用いる場合)
using System.IO;
public void WiteFile(){
string filePath = "c:\data\text.txt";
string[] text = GetLines();
StreamWriter sw = new StreamWriter(filePath, false, Encoding.GetEncoding("euc-jp"));
for(int i=0; i<text.Length; i++){
sw.Write(text);
}
sw.Close();
}
EUCで保存する場合 (WriteAllTextを用いる場合)
using System.IO;
public void WiteFile(){
string filePath = "c:\data\text.txt";
Encoding enc = Encoding.GetEncoding("euc-jp");
string text ="AAA BBB\r\n CCC\r\n";
File.WriteAllText(filePath, text, enc);
/*
//ファイルに追加する場合はAppendAllTextを用いる。
File.AppendAllText(filePath, text, enc);
*/
}
著者
iPentecのメインプログラマー
C#, ASP.NET の開発がメイン、少し前まではDelphiを愛用