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

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Не печатаются русские буквы 
:(
    Опции темы
Nikola661
  Дата 15.5.2007, 07:41 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 82
Регистрация: 14.5.2007

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



Здравствуйте!!! Использую struts, хочу вывести на печать содержимое файла. Печать идет, но русские буквы печатаются каряво, не могу понять smile . Может что с кодировкой?? Спасибо!!!
Цитата


public class Hello extends Action{
    public ActionForward execute(ActionMapping mapping,
               ActionForm form,
               HttpServletRequest request,
               HttpServletResponse response) throws ServletException, ClassNotFoundException, PrintException, FileNotFoundException
        {
        String st = request.getParameter("field");
        if (st.equals("ok")) {
            return mapping.findForward("ok");
        } else {
            System.out.println(Locale.getDefault()); \\Говорит, что  ru
            javax.print.PrintService ps = PrintServiceLookup.lookupDefaultPrintService ();
            DocPrintJob job = ps.createPrintJob();
            FileInputStream f = new FileInputStream(new File ("c:/1.txt"));
            DocFlavor df = DocFlavor.INPUT_STREAM.AUTOSENSE;
            Doc doc = new SimpleDoc(f, df, null);
            job.print(doc,null);

            return mapping.findForward("false");
        }
        
    }

}

PM MAIL   Вверх
batigoal
Дата 15.5.2007, 07:59 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Нелетучий Мыш
****


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

Репутация: 16
Всего: 151



Так в какой кодировке сохранен сам файл? Попробуй указать её явно.
Кроме того, ты читаешь в бинарном режиме, а файл у тебя, видимо, записан в текстовом.

Код

FileInputStream fis = new FileInputStream("c:/1.txt");
InputStreamReader isr = new InputStreamReader(fis, "UTF8");



--------------------
"Чтобы правильно задать вопрос, нужно знать большую часть ответа" (Р. Шекли)
ЖоржЖЖ
PM WWW   Вверх
Nikola661
Дата 15.5.2007, 09:59 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 82
Регистрация: 14.5.2007

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



Цитата(batigoal @ 15.5.2007,  07:59)
Так в какой кодировке сохранен сам файл? Попробуй указать её явно.
Кроме того, ты читаешь в бинарном режиме, а файл у тебя, видимо, записан в текстовом.

Код

FileInputStream fis = new FileInputStream("c:/1.txt");
InputStreamReader isr = new InputStreamReader(fis, "UTF8");

Файл сохранён в кодировке win-1251(ansi-кириллица)
PM MAIL   Вверх
Nikola661
  Дата 15.5.2007, 10:17 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 82
Регистрация: 14.5.2007

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



Я хочу сделать так: получаю какой-то набор данных и мне надо его распечатать в форматированном виде (что-то вроде квитанции, чека, справки), юзер не должен видеть печатаемую информацию на экране, т.е. нажал на кнопку и всё. Есть какие-нибудь примочки чтобы создать документ в опред. форме и распечатать его??  smile 
PM MAIL   Вверх
tux
Дата 15.5.2007, 10:45 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Летатель
***


Профиль
Группа: Участник Клуба
Сообщений: 1853
Регистрация: 10.2.2005
Где: msk.ru

Репутация: 74
Всего: 132



Цитата(Nikola661 @  15.5.2007,  10:17 Найти цитируемый пост)
Есть какие-нибудь примочки чтобы создать документ в опред. форме и распечатать его??

Есть средства построения отчетов, для того и предназначены. Например, JFreeReport, JasperReports, Eclipse Birt.
PM MAIL Skype GTalk Jabber YIM   Вверх
Nikola661
  Дата 18.5.2007, 07:18 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 82
Регистрация: 14.5.2007

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



 smile Есть доки?? А то там ничего не понятно!!!  smile 
Выбрал Bird, посоветовали. smile
Если можно какие-нибудь примеры!!  smile 

Это сообщение отредактировал(а) Nikola661 - 18.5.2007, 07:46
PM MAIL   Вверх
tux
Дата 18.5.2007, 08:04 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Летатель
***


Профиль
Группа: Участник Клуба
Сообщений: 1853
Регистрация: 10.2.2005
Где: msk.ru

Репутация: 74
Всего: 132



Цитата(Nikola661 @  18.5.2007,  07:18 Найти цитируемый пост)
Есть доки?? А то там ничего не понятно!!!

Где там? Вся существующая документация - на сайте Birt.

Цитата(Nikola661 @  18.5.2007,  07:18 Найти цитируемый пост)
Если можно какие-нибудь примеры!! 

Примеры там же.
PM MAIL Skype GTalk Jabber YIM   Вверх
Nikola661
  Дата 30.5.2007, 10:16 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 82
Регистрация: 14.5.2007

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



Немогу создать Data Source для Bird-отчета.
Тип выбираю JDBC Data Souce.
Driver class: org.firebirdsql.jdbc.FBDriver
DataBase URL: jdbc:firebirdsql://10.11.12.13/c:/db.fdb
User: sysdba
Password:masterkey

Когда начинаю создавать Data Set выходит ошибка.
PM MAIL   Вверх
_lleopard_
Дата 4.6.2007, 13:03 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 33
Регистрация: 18.4.2007

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



У меня вопросик связанный с кодировкой.
Я из сервлета отправляю текст который частично состоит из русских букв, потом его получаю в JS а затем вывожу на экран.
Подскажите пожалуйста как закодировать в сервлете, а потом раскодировать в JS что бы нормально получить русские буквы?
PM MAIL   Вверх
batigoal
Дата 4.6.2007, 14:06 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Нелетучий Мыш
****


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

Репутация: 16
Всего: 151



Отправить текст из сервлета в той же кодировке, которая применена ко всей выходной HTML-странице (и указана в её заголовке).


--------------------
"Чтобы правильно задать вопрос, нужно знать большую часть ответа" (Р. Шекли)
ЖоржЖЖ
PM WWW   Вверх
_lleopard_
Дата 5.6.2007, 06:04 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 33
Регистрация: 18.4.2007

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



Цитата(batigoal @ 4.6.2007,  14:06)
Отправить текст из сервлета в той же кодировке, которая применена ко всей выходной HTML-странице (и указана в её заголовке).

URLEncoder s;
s.encode("текст","windows-1251"));
я вот так отправляю в JS, там уже получаю закодированное, абру-кадабру, как теперь в JS раскодировать что бы получить нормальный текст? Или нужно в сервлете не таким образом кодировать?

Это сообщение отредактировал(а) _lleopard_ - 5.6.2007, 06:18
PM MAIL   Вверх
batigoal
Дата 5.6.2007, 11:13 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Нелетучий Мыш
****


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

Репутация: 16
Всего: 151



В JS не нужно ничего перекодировать. Посмотри исходный код скрипта - там кракозяблы?

К тому же, URLEncoder не предназначен для перекодирования строк. Он URLEncoder. Приведи более полный код.


--------------------
"Чтобы правильно задать вопрос, нужно знать большую часть ответа" (Р. Шекли)
ЖоржЖЖ
PM WWW   Вверх
_lleopard_
Дата 5.6.2007, 12:47 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 33
Регистрация: 18.4.2007

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



Да при чём тут более полный код, есть текст "Привет Маша"!!, я его сую в поток out.println(текст),
что мне нужно с ним сделать что бы в скрипте получить нормальный текст. Англ буквы нормально обрабатываются, я русские нет!

Это сообщение отредактировал(а) _lleopard_ - 5.6.2007, 13:23
PM MAIL   Вверх
Orange
Дата 5.6.2007, 16:28 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 129
Регистрация: 6.9.2004
Где: Russia, Moscow

Репутация: нет
Всего: 5



Код

out.println(new String("текс").getBytes("кодировка на входе"), "кодировка на выходе");

--------------------
Пару дней назад я познакомился с мальчиком......
PM MAIL ICQ   Вверх
batigoal
Дата 5.6.2007, 18:15 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Нелетучий Мыш
****


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

Репутация: 16
Всего: 151



Цитата(_lleopard_ @  5.6.2007,  13:47 Найти цитируемый пост)
я его сую в поток out.println(текст),

Вот именно это я и хотел от тебя услышать.


--------------------
"Чтобы правильно задать вопрос, нужно знать большую часть ответа" (Р. Шекли)
ЖоржЖЖ
PM WWW   Вверх
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Java"
LSD   AntonSaburov
powerOn   tux
  • Прежде, чем задать вопрос, прочтите это!
  • Книги по Java собираются здесь.
  • Документация и ресурсы по Java находятся здесь.
  • Используйте теги [code=java][/code] для подсветки кода. Используйтe чекбокс "транслит", если у Вас нет русских шрифтов.
  • Помечайте свой вопрос как решённый, если на него получен ответ. Ссылка "Пометить как решённый" находится над первым постом.
  • Действия модераторов можно обсудить здесь.
  • FAQ раздела лежит здесь.

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

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


 




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


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

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