значит работаю с файлами а именно чтение запись, да вот все хорошо да только русский текст кракобязами выходит
что делаю, создаю текстовый файл с кирилицей типа "я люблю фаер фокс!!!" , далее следующий код с моего любимого MDC

Выделить код

Код:

const nsIFilePicker = Components.interfaces.nsIFilePicker;

var fp = Components.classes["@mozilla.org/filepicker;1"]
               .createInstance(nsIFilePicker);
fp.init(window, "Dialog Title", nsIFilePicker.modeOpen);
fp.appendFilters(nsIFilePicker.filterAll | nsIFilePicker.filterText);

var rv = fp.show();
if (rv == nsIFilePicker.returnOK || rv == nsIFilePicker.returnReplace) {
  var file = fp.file;
    var path = fp.file.path;
  
var istream = Components.classes["@mozilla.org/network/file-input-stream;1"].
                        createInstance(Components.interfaces.nsIFileInputStream);
istream.init(file, 0x01, 0444, 0);
istream.QueryInterface(Components.interfaces.nsILineInputStream);

// read lines into array
var line = {}, lines = [], hasmore;
do {
  hasmore = istream.readLine(line);
  lines.push(line.value); 
} while(hasmore);

istream.close();

// do something with read data
alert(lines);
}

и на выходе в алерте получаем   ï»¿ÿ ëþáëþ ôàåð ôîêñ!!!
ЧТО  ДЕЛАТЬ?

bidlocoder
Может дело в кодировке при сохранении? .... обычно рекомендуют выставлять UTF-8 ,только  не знаю тот ли это вообще случай :angel:

https://developer.mozilla.org/en/nsIScriptableUnicodeConverter

так с русским текстом разобрался  оказалось все просто

Выделить код

Код:

var uniConv = Components.classes["@mozilla.org/intl/scriptableunicodeconverter"].createInstance(Components.interfaces.nsIScriptableUnicodeConverter);
      uniConv.charset = "utf-8"; lines = uniConv.ConvertFromUnicode(lines);

 alert(lines);

русский текст есть, но теперь проблема, хотя она и была(не замечал раньше) не выводятся символы переноса строки тоесть вместо него ничего нет, как теперь с этим бороться

для примера если вывести файл содержимое которого

то на выходе получаем

как с этим бороться?