Модераторы: LSD, AntonSaburov
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Почему говорят, что *.java файл имеет UTF-16? 
:(
    Опции темы
Dims
Дата 27.7.2008, 13:47 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1016
Регистрация: 21.11.2006

Репутация: 1
Всего: 11



Вот здесь http://java.sun.com/docs/books/jls/third_e...exical.html#3.1

написано, что язык Java предполагает кодировку файлов UTF-16

Но ни NetBeans 6.1 ни JBuilder 2006 этого не выполняют: первый кодирует в UTF-8, а второй -- в WIN1251.

Почему? Где указано, как закодирован файл? Получается, я не смогу откомпилировать файлы NetBeans или JBuilder стандартным javac?
PM MAIL   Вверх
Дрон
Дата 27.7.2008, 17:17 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Java-ненавистник :)
****


Профиль
Группа: Участник Клуба
Сообщений: 3179
Регистрация: 29.12.2002
Где: Санкт-Петербург

Репутация: 1
Всего: 93



Цитата(Dims @  27.7.2008,  13:47 Найти цитируемый пост)
NetBeans 6.1 ... этого не выполняют: ...кодирует в UTF-8

В Netbeans в свойствах проекта, в категории Source, внизу есть список Encoding. По умолчанию там UTF-8.

Цитата(Dims @  27.7.2008,  13:47 Найти цитируемый пост)
Получается, я не смогу откомпилировать файлы NetBeans или JBuilder стандартным javac? 

javac -encoding UTF-8


Это сообщение отредактировал(а) Дрон - 27.7.2008, 17:17


--------------------
Да. Именно так.
PM   Вверх
LSD
Дата 28.7.2008, 11:32 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Leprechaun Software Developer
****


Профиль
Группа: Модератор
Сообщений: 15718
Регистрация: 24.3.2004
Где: Dublin

Репутация: 15
Всего: 538



Где ты там увидел что кодировка .java файлов UTF-16?

Там сказано, что кодировка программы, юникод, а кодировка исходников может быть любая. Перед компиляцией исходники читаются, преобразуются в юникод, все escape-последовательности заменяются на соответсвующие символы, после чего программа компилируется.


--------------------
Disclaimer: this post contains explicit depictions of personal opinion. So, if it sounds sarcastic, don't take it seriously. If it sounds dangerous, do not try this at home or at all. And if it offends you, just don't read it.
PM MAIL WWW   Вверх
Dims
Дата 28.7.2008, 18:30 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1016
Регистрация: 21.11.2006

Репутация: 1
Всего: 11



Цитата(LSD @  28.7.2008,  11:32 Найти цитируемый пост)
Там сказано, что кодировка программы, юникод, а кодировка исходников может быть любая.

А что означает "кодировка программы", если это не кодировка исходников?

Цитата(LSD @  28.7.2008,  11:32 Найти цитируемый пост)
Перед компиляцией исходники читаются, преобразуются в юникод

А какой смысл в этом этапе? 

Я понимаю, если постанавливается кодировка исходников. Это -- стандартизация. А если кодировка исходников может быть любой, то кого волнует, какие преобразования они претерпевают там внутри? Это значит, что стандарта нет, вот и всё.

Добавлено через 2 минуты и 1 секунду
Цитата(Дрон @  27.7.2008,  17:17 Найти цитируемый пост)
В Netbeans в свойствах проекта, в категории Source, внизу есть список Encoding

Во! Это помогло. Мне нужно было проект переложить из JBuilder в NetBeans.

Добавлено через 9 минут и 57 секунд
Ха! Какое позорище! Не ожидал такого от Джавы:

user posted image

Они, родимые! Ничегошеньки-то не изменилось :(

Добавлено через 11 минут и 28 секунд
УПС! Пардон, моя вина! Сборка была проведена частично с фалами, откомпилированными со старой настройкой encoding smile
PM MAIL   Вверх
LSD
Дата 29.7.2008, 14:53 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Leprechaun Software Developer
****


Профиль
Группа: Модератор
Сообщений: 15718
Регистрация: 24.3.2004
Где: Dublin

Репутация: 15
Всего: 538



Цитата(Dims @  28.7.2008,  19:30 Найти цитируемый пост)
А что означает "кодировка программы", если это не кодировка исходников?

Это то что получит на вход синтаксический анализатор.



Цитата(Dims @  28.7.2008,  19:30 Найти цитируемый пост)
А какой смысл в этом этапе?

Получить текст программы в UTF-16, который поддерживает практически все символы.



Цитата(Dims @  28.7.2008,  19:30 Найти цитируемый пост)
Я понимаю, если постанавливается кодировка исходников. Это -- стандартизация. А если кодировка исходников может быть любой, то кого волнует, какие преобразования они претерпевают там внутри? Это значит, что стандарта нет, вот и всё.

Смысл в том, что ты:
1. Можешь не беспокоиться о том, какую кодировку использует компилятор внутри. Т.к. юникод позволяет перекрыть 99,999% используемых символов.
2. Можешь использовать любой текстовый редактор, систему контроля версий и т.п., которые тебе нравятся, независимо от того поддерживает они юникод или нет. Главное при компиляции правильно указать кодировку исходников.
3. Использовать в исходниках любые символы поддерживаемые юникодом, опять же независимо от кодировки этих исходников.


--------------------
Disclaimer: this post contains explicit depictions of personal opinion. So, if it sounds sarcastic, don't take it seriously. If it sounds dangerous, do not try this at home or at all. And if it offends you, just don't read it.
PM MAIL WWW   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Java"
LSD   AntonSaburov
powerOn   tux
  • Прежде, чем задать вопрос, прочтите это!
  • Книги по Java собираются здесь.
  • Документация и ресурсы по Java находятся здесь.
  • Используйте теги [code=java][/code] для подсветки кода. Используйтe чекбокс "транслит", если у Вас нет русских шрифтов.
  • Помечайте свой вопрос как решённый, если на него получен ответ. Ссылка "Пометить как решённый" находится над первым постом.
  • Действия модераторов можно обсудить здесь.
  • FAQ раздела лежит здесь.

Если Вам помогли, и атмосфера форума Вам понравилась, то заходите к нам чаще! С уважением, LSD, AntonSaburov, powerOn, tux.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Java tools & IDE's | Следующая тема »


 




[ Время генерации скрипта: 0.0502 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.