Цитата:
Сообщение от
gl00mie
Ну а если "руками" дописать этот BOM (0xEF 0xBB 0xBF) в файл перед конвертированными данными?..
Вот только что так и сделал
На C# написал консольное приложение, которое принимает путь к файлу, который надо переконвертировать в UTF-8 и в него же записывает результат с BOM:
X++:
static void Main(string[] args)
{
string path = args[0];
System.Text.Encoding encodingUTF = System.Text.Encoding.UTF8;
System.Text.Encoding encodingWin = System.Text.Encoding.ASCII;
string content = "";
using (FileStream fs = File.Open(path, FileMode.Open))
{
StreamReader sr = new StreamReader(fs, Encoding.Default);
content = sr.ReadToEnd();
}
using (FileStream fsw = File.OpenWrite(path))
{
Byte[] info = new UTF8Encoding(true).GetBytes(content);
fsw.WriteByte(0xEF);
fsw.WriteByte(0xBB);
fsw.WriteByte(0xBF);
fsw.Write(info, 0, info.Length);
}
}
Почему-то работает гораздо быстрее чем линуксовый конвертер recode
)