В какой кодировке хранятся строки в Java? Как преобразовать строку из UTF-8 в Windows-1251?​

Строки в java хранятся в Unicode. Для того что бы собрать строку в кодировке windows-1251 для неё нужно подготовить «правильные» байты.

public class Test {
    public static void main(String[] args) throws IOException {
        BufferedReader is = new BufferedReader(new InputStreamReader(new FileInputStream("/home/maks/myFile")));
        BufferedWriter bw = new BufferedWriter(new OutputStreamWriter(new FileOutputStream("/home/maks/myFileout")));
        while(is.ready()){
            byte[] byte1251 = is.readLine().getBytes("windows-1251");
            String outString = new String(byte1251,"windows-1251");
            System.out.println(outString);
            bw.write(outString);
            bw.newLine();
        }
        is.close();
        bw.flush();
        bw.close();

    }
}

 

Понравилась статья? Поделиться с друзьями:

Комментарии:

Добавить комментарий

;-) :| :x :twisted: :smile: :shock: :sad: :roll: :razz: :oops: :o :mrgreen: :lol: :idea: :grin: :evil: :cry: :cool: :arrow: :???: :?: :!: