Извините, ничего не найдено.

Не расстраивайся! Лучше выпей чайку!
Регистрация
Справка
Календарь

Вернуться   forum.boolean.name > Программирование игр для компьютеров > C++

Ответ
 
Опции темы
Старый 12.07.2011, 15:20   #1
RegIon
Элита
 
Аватар для RegIon
 
Регистрация: 16.01.2010
Адрес: Новосибирск
Сообщений: 2,157
Написано 502 полезных сообщений
(для 1,012 пользователей)
ebook reader

Хочу читалкку написать на консоль,правда вот хотелось бы чтоб была с авто определением кодировки,как??
мой вариант:читаем байтов 6-8 с файла,
если все читабельны
ASCII
если размер файла кратен 2
unicode
конец
нет
UNICODE
конец
int i;
bool res=1;
for(i=0;i<8;i++)
{
if(string[i]>31)
if(res!=0) res=1;
}else{
res=0;
}
//хз как узнать четность размера файла
}
if(res==0) unicode
__________________
Сайт: http://iexpo.ml
(Offline)
 
Ответить с цитированием
Старый 12.07.2011, 15:23   #2
impersonalis
Зануда с интернетом
 
Аватар для impersonalis
 
Регистрация: 04.09.2005
Сообщений: 14,014
Написано 6,798 полезных сообщений
(для 20,935 пользователей)
Ответ: ebook reader

если все читабельны
коды более 31?
текст логически связан?

поясни.
__________________
http://nabatchikov.com
Мир нужно делать лучше и чище. Иначе, зачем мы живем? tormoz
А я растила сына на преданьях
о принцах, троллях, потайных свиданьях,
погонях, похищениях невест.
Да кто же знал, что сказка душу съест?
(Offline)
 
Ответить с цитированием
Старый 12.07.2011, 15:28   #3
RegIon
Элита
 
Аватар для RegIon
 
Регистрация: 16.01.2010
Адрес: Новосибирск
Сообщений: 2,157
Написано 502 полезных сообщений
(для 1,012 пользователей)
Ответ: ebook reader

коды более 31?
текст логически связан?

поясни.
да,да

(импер умеет читать коды<31)
__________________
Сайт: http://iexpo.ml
(Offline)
 
Ответить с цитированием
Старый 12.07.2011, 16:15   #4
impersonalis
Зануда с интернетом
 
Аватар для impersonalis
 
Регистрация: 04.09.2005
Сообщений: 14,014
Написано 6,798 полезных сообщений
(для 20,935 пользователей)
Ответ: ebook reader

Сообщение от Костян Посмотреть сообщение
Хочу читалкку написать на консоль,правда вот хотелось бы чтоб была с авто определением кодировки,как??
мой вариант:читаем байтов 6-8 с файла,
если все читабельны
ASCII
если размер файла кратен 2
unicode
конец
нет
UNICODE
конец
int i;
bool res=1;
for(i=0;i<8;i++)
{
if(string[i]>31)
if(res!=0) res=1;
}else{
res=0;
}
//хз как узнать четность размера файла
}
if(res==0) unicode
res=ВСЁ_ПУТЁМ;
for(i=0;i<8;i++){
if(string[i]<32){
res=ОШИБКА;
break;}
}
__________________
http://nabatchikov.com
Мир нужно делать лучше и чище. Иначе, зачем мы живем? tormoz
А я растила сына на преданьях
о принцах, троллях, потайных свиданьях,
погонях, похищениях невест.
Да кто же знал, что сказка душу съест?
(Offline)
 
Ответить с цитированием
Сообщение было полезно следующим пользователям:
RegIon (12.07.2011)
Старый 12.07.2011, 16:26   #5
RegIon
Элита
 
Аватар для RegIon
 
Регистрация: 16.01.2010
Адрес: Новосибирск
Сообщений: 2,157
Написано 502 полезных сообщений
(для 1,012 пользователей)
Ответ: ebook reader

Сообщение от impersonalis Посмотреть сообщение
res=ВСЁ_ПУТЁМ;
for(i=0;i<8;i++){
if(string[i]<32){
res=ОШИБКА;
break;}
}
а если попадется юникодный текст где будет символ кода 035 064???тоже сработает
__________________
Сайт: http://iexpo.ml
(Offline)
 
Ответить с цитированием
Старый 12.07.2011, 16:46   #6
Igor
Мастер
 
Аватар для Igor
 
Регистрация: 03.05.2010
Адрес: Подмосковье
Сообщений: 1,218
Написано 438 полезных сообщений
(для 790 пользователей)
Ответ: ebook reader

Можно выбирать вручную. Книгу читаешь несколько часов, а подобрать кодировку - минуту.
В русском тексте часто встречаются буквы а,о,е. Попробуй проверить их количество каждой кодировкой.
__________________
О¯О ¡¡¡ʁɔvʎнdǝʚǝdǝu dиW
(Offline)
 
Ответить с цитированием
Старый 12.07.2011, 16:59   #7
Randomize
[object Object]
 
Аватар для Randomize
 
Регистрация: 01.08.2008
Адрес: В России
Сообщений: 4,355
Написано 2,471 полезных сообщений
(для 6,852 пользователей)
Ответ: ebook reader

http://en.wikipedia.org/wiki/Byte_order_mark

http://msdn.microsoft.com/en-us/libr...72(VS.85).aspx

http://msdn.microsoft.com/en-us/netf.../aa569610.aspx

http://utfcpp.sourceforge.net/

http://icu-project.org/apiref/icu4c/...c915214a8e94fd
??
__________________
Retry, Abort, Ignore? █
Intel Core i7-9700 4.70 Ghz; 64Gb; Nvidia RTX 3070
AMD Ryzen 7 3800X 4.3Ghz; 64Gb; Nvidia 1070Ti
AMD Ryzen 7 1700X 3.4Ghz; 8Gb; AMD RX 570
AMD Athlon II 2.6Ghz; 8Gb; Nvidia GTX 750 Ti
(Offline)
 
Ответить с цитированием
Старый 13.07.2011, 13:28   #8
RegIon
Элита
 
Аватар для RegIon
 
Регистрация: 16.01.2010
Адрес: Новосибирск
Сообщений: 2,157
Написано 502 полезных сообщений
(для 1,012 пользователей)
Ответ: ebook reader

НУ блин,сам почти все такое читал...
__________________
Сайт: http://iexpo.ml
(Offline)
 
Ответить с цитированием
Старый 19.07.2011, 01:23   #9
Randomize
[object Object]
 
Аватар для Randomize
 
Регистрация: 01.08.2008
Адрес: В России
Сообщений: 4,355
Написано 2,471 полезных сообщений
(для 6,852 пользователей)
Ответ: ebook reader

Сообщение от Костян Посмотреть сообщение
НУ блин,сам почти все такое читал...
Если не помогло, то ситуация безнадёжна. Не находишь?
__________________
Retry, Abort, Ignore? █
Intel Core i7-9700 4.70 Ghz; 64Gb; Nvidia RTX 3070
AMD Ryzen 7 3800X 4.3Ghz; 64Gb; Nvidia 1070Ti
AMD Ryzen 7 1700X 3.4Ghz; 8Gb; AMD RX 570
AMD Athlon II 2.6Ghz; 8Gb; Nvidia GTX 750 Ti
(Offline)
 
Ответить с цитированием
Старый 19.07.2011, 01:30   #10
NitE
злобный флудер
 
Регистрация: 10.07.2007
Сообщений: 2,585
Написано 789 полезных сообщений
(для 1,476 пользователей)
Ответ: ebook reader

Человек, который прочитал всю википедию, изучил весь мсдн и проанализировал все исходники на СФ - не может попаст в безнадёжную ситуацию.
(Offline)
 
Ответить с цитированием
Старый 19.07.2011, 01:31   #11
Nex
Гигант индустрии
 
Аватар для Nex
 
Регистрация: 13.09.2008
Сообщений: 2,893
Написано 1,185 полезных сообщений
(для 3,298 пользователей)
Ответ: ebook reader

Сообщение от NitE Посмотреть сообщение
Человек, который прочитал всю википедию, изучил весь мсдн и проанализировал все исходники на СФ - не может попаст в безнадёжную ситуацию.
Это даже Онатолэ не ослит.
(Offline)
 
Ответить с цитированием
Ответ


Опции темы

Ваши права в разделе
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы не можете редактировать сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.


Часовой пояс GMT +4, время: 12:24.


vBulletin® Version 3.6.5.
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Перевод: zCarot
Style crйe par Allan - vBulletin-Ressources.com