|
|
|
Кодировка в JAVA
|
|||
|---|---|---|---|
|
#18+
Привет. У меня есть xml. Она не открывается потомучто некоторые значения элементов в кодировке, помоему UTF-8... Вообщем тема. Если я открываю через ноутпэд и схораняю как файл в формате UTF-8, то мой xml-процессор понимает и читает все это. как тоже самое написать на java, пишу следующий код: import java.io.*; public class CopyBytes { public static void main(String[] args) throws IOException { File inputFile = new File("erp.xml"); File outputFile = new File("erp1.xml"); FileInputStream in = new FileInputStream(inputFile); InputStreamReader isr = new InputStreamReader(in, "UTF-8"); FileOutputStream out = new FileOutputStream(outputFile); int c; while ((c = isr.read()) != -1) out.write(c); isr.close(); out.close(); } } Но кроме символов эээээээ ничего не выводит, что я делаю не так? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.02.2007, 09:49:03 |
|
||
|
Кодировка в JAVA
|
|||
|---|---|---|---|
|
#18+
andrei77 Но кроме символов эээээээ ничего не выводит, что я делаю не так? Мне кажется, вы не думали над тем, зачем в вашем коде используется InputStreamReader isr = new InputStreamReader(in, "UTF-8"). И чего не хватает при выводе потока. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.02.2007, 10:16:10 |
|
||
|
Кодировка в JAVA
|
|||
|---|---|---|---|
|
#18+
не хватает выводв в UTF-8, я делаю так: import java.io.*; public class CopyBytes { public static void main(String[] args) throws IOException { FileInputStream in = new FileInputStream("erp.xml"); InputStreamReader isr = new InputStreamReader(in, "UTF8"); FileOutputStream fos = new FileOutputStream("mllll.txt"); Writer out = new OutputStreamWriter(fos, "UTF8"); int c; while ((c = isr.read()) != -1) out.write(c); in.close(); isr.close(); fos.close(); out.close(); } } ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.02.2007, 10:44:50 |
|
||
|
Кодировка в JAVA
|
|||
|---|---|---|---|
|
#18+
Да, приблизительно так. Не забывайте про Flush. Надеюсь лишь, что вы не будете так делать в реальном приложении и пример исключительно для опыта в сохранении файлов с разными кодировками ;) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.02.2007, 10:54:00 |
|
||
|
Кодировка в JAVA
|
|||
|---|---|---|---|
|
#18+
а почему оно так тоже не работает? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.02.2007, 11:06:54 |
|
||
|
Кодировка в JAVA
|
|||
|---|---|---|---|
|
#18+
andrei77а почему оно так тоже не работает? Может быть вам следует начать с основ программирования? Или основ Java. Существует большой количество хороших книг. Вас научат различать потоки ввода/вывода и механизмы чтения из потоков. Вы поймете, что следует закрывать сначала, а что потом. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.02.2007, 11:11:17 |
|
||
|
Кодировка в JAVA
|
|||
|---|---|---|---|
|
#18+
я и так об этом знаю :) конечно не так хорошо но всеже... думаю, что эти штуки закрывать не надо было просто, а только потоки ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.02.2007, 11:38:30 |
|
||
|
Кодировка в JAVA
|
|||
|---|---|---|---|
|
#18+
Достаточно лишь изменить порядок Код: plaintext 1. 2. 3. 4. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.02.2007, 11:42:16 |
|
||
|
Кодировка в JAVA
|
|||
|---|---|---|---|
|
#18+
книжки у меня всегда под рукой. но вопросы остаются вот сделал, все отлично переводится import java.io.*; public class CopyBytes { public static void main(String[] args) throws IOException { FileInputStream in = new FileInputStream("erp.xml"); InputStreamReader isr = new InputStreamReader(in, "cp1251"); FileOutputStream fos = new FileOutputStream("mllll.txt"); Writer out = new OutputStreamWriter(fos, "UTF16"); int c; while ((c = in.read()) != -1) out.write(c); in.close(); fos.close(); } } Только не понимаю, как сделать аналогично операции в блокноте открыть и сохранит в UTF8 В какой кодировке нужно читать? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.02.2007, 12:01:16 |
|
||
|
|

start [/forum/topic.php?fid=59&msg=34308635&tid=2146725]: |
0ms |
get settings: |
14ms |
get forum list: |
18ms |
check forum access: |
5ms |
check topic access: |
5ms |
track hit: |
63ms |
get topic data: |
13ms |
get forum data: |
3ms |
get page messages: |
46ms |
get tp. blocked users: |
1ms |
| others: | 311ms |
| total: | 479ms |

| 0 / 0 |
