Здравствуйте, azzx, Вы писали:
A>import java.io.*;
A>public class Test {
A> public static void main(String args[]) throws IOException {
A> System.out.println("Некоторая тестовая строка");
A> PrintWriter pr = new PrintWriter(new File("test.log"));
A> pr.write("Некоторая тестовая строка");
A> pr.flush();
A> }
A>}
Используй тег [java] для раскраски кода. Не пиши строковые константы в коде.
A>Компилируем: java -encoding Cp1251 Test.java — т.е. всё путём.
javac
A>Запускаем: java Test
A>Результат: В файле — Win-1251, на консоли — кракозябры
A>Юзаем стандартный способ...
A>Запускаем: java -Dfile.encoding=cp866 Test
A>Результат: В файле — DOS866, на консоли — всё понятно.
Вроде все понимаешь.
A>Так вот вопрос — как поиметь на консоли понятное и в файле — Win1251?
A>Разные варианты с ручной перекодировкой строк, уже и не помню даже какие
A>точно (ибо несоклько их было), пробовал, а толку не получил.
Вот примеры:
http://rsdn.ru/Forum/Message.aspx?mid=1952081&only=1Автор: Blazkowicz
Дата: 13.06.06
Но для комерческого продукта такой подход не допустим. Строки все лучше вынести в отдельный файл.
Смотри так же OutputStreamWriter в котором можно указывать кодировку.