|
|
|
В какой кодировке студия создает строки?
|
|||
|---|---|---|---|
|
#18+
Если создать строку в студии типа: char *str = "Строка", то при сохранении в файл она будет в win1251 (если не ошибаюсь), т.е. внутри программы такие строки хранятся в этой кодировке? так? Если да, то где это задается в настройках студии, если вообще задается? Теперь, у меня есть текст, например в файле, я его считываю в буфер, и мне нужно отыскать там эту строку. Для этого я должен быть уверен, что и текст считанный из файла и моя статическая строка созданная компилятором в одной кодировке. 1. Как мне узнать во время выполнения программы, в какой кодировке компилятор сохранил эти строки в исполняемом файле? 2. Как мне узнать в какой кодировке открытый мною файл? (в частности koi-r8 или win-1251) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.10.2007, 00:12:29 |
|
||
|
В какой кодировке студия создает строки?
|
|||
|---|---|---|---|
|
#18+
Tubrik пишет: > Теперь, у меня есть текст, например в файле, я его считываю в буфер, и > мне нужно отыскать там эту строку. Для этого я должен быть уверен, что и > текст считанный из файла и моя статическая строка созданная компилятором > в одной кодировке. > > 1. Как мне узнать во время выполнения программы, в какой кодировке > компилятор сохранил эти строки в исполняемом файле? > 2. Как мне узнать в какой кодировке открытый мною файл? (в частности > koi-r8 или win-1251) Бедный, как же его колбасит ! В общем, разясняю. Кодировка в файле такая, какую ты туда записал. ЕЕ ПРОСТО НАДО ЗНАТЬ. Во время выполнения программы узнать, в какой кодировке какой-то файл нельзя. Надо ПРОСТО ЗНАТЬ В КАКОЙ ОНО КОДИРОВКЕ. Априоре. Posted via ActualForum NNTP Server 1.4 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.10.2007, 00:56:22 |
|
||
|
В какой кодировке студия создает строки?
|
|||
|---|---|---|---|
|
#18+
TubrikЕсли создать строку в студии типа: char *str = "Строка", то при сохранении в файл она будет в win1251 (если не ошибаюсь), т.е. внутри программы такие строки хранятся в этой кодировке? так?Не совсем так. Если не ставить модификторов, то строковые константы будут превращены char массивы, в которых одна буква=один char точно в той кодировке в которой они написаны в исходном тексте программы. С модификатором может быть все что угодно. Например L"hello" сделает тебе стороку в UTF-16. Текстовый редактор студии пишет константы в системной кодировке. То есть если у тебя в винда настроена по умолчанию на cp1251, то и константы будут в ней. TubrikТеперь, у меня есть текст, например в файле, я его считываю в буфер, и мне нужно отыскать там эту строку. Для этого я должен быть уверен, что и текст считанный из файла и моя статическая строка созданная компилятором в одной кодировке.Переходи с текстовых констант на цифровые. Задай свою строку в виде: Код: plaintext Tubrik1. Как мне узнать во время выполнения программы, в какой кодировке компилятор сохранил эти строки в исполняемом файле?Во время выполнения? Ну например сделай себе несколько массивов, в каждый запиши строку "привет" цифрами, но в разных кодировках. А потом сравнивай текстовую константу привет со всеми этими массивами по очереди. С каким совпадет - значит в той кодировке и все твои константы. Tubrik2. Как мне узнать в какой кодировке открытый мною файл? (в частности koi-r8 или win-1251)Сделать статистический анализ. Самая часто встречаемая буква в русском тексте это "Е", вторая по частоте... не помню... Считаешь какой байтик в тексте встречается чаще всего, какой на втором месте, какой на третьем. Потом сравниваешь полученую группу лидеров с наборами этих букв в соотвествющей кодировке. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.10.2007, 01:03:51 |
|
||
|
В какой кодировке студия создает строки?
|
|||
|---|---|---|---|
|
#18+
ок, понял ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.10.2007, 01:55:00 |
|
||
|
В какой кодировке студия создает строки?
|
|||
|---|---|---|---|
|
#18+
White OwlСамая часто встречаемая буква в русском тексте это "Е"хм, всегда считал, что это "О" Posted via ActualForum NNTP Server 1.4 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.10.2007, 07:28:00 |
|
||
|
В какой кодировке студия создает строки?
|
|||
|---|---|---|---|
|
#18+
Карабас Барабас White OwlСамая часто встречаемая буква в русском тексте это "Е"хм, всегда считал, что это "О" Целая кандидатская: Автоматическое определение кодировки текста . Там же и частоты встречаемости. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.10.2007, 10:51:45 |
|
||
|
В какой кодировке студия создает строки?
|
|||
|---|---|---|---|
|
#18+
Карабас Барабас White OwlСамая часто встречаемая буква в русском тексте это "Е"хм, всегда считал, что это "О"эээ... ну да, с английским перепутал :( ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.10.2007, 17:17:59 |
|
||
|
В какой кодировке студия создает строки?
|
|||
|---|---|---|---|
|
#18+
... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.10.2007, 17:22:52 |
|
||
|
В какой кодировке студия создает строки?
|
|||
|---|---|---|---|
|
#18+
Akh оно? вроде да, благодарю ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.10.2007, 17:26:27 |
|
||
|
В какой кодировке студия создает строки?
|
|||
|---|---|---|---|
|
#18+
MasterZivВо время выполнения программы узнать, в какой кодировке какой-то файл нельзя. Надо ПРОСТО ЗНАТЬ В КАКОЙ ОНО КОДИРОВКЕ. Априоре. Коллега, позвольте не согласиться. Если на этапе выполнения программы неизвестно в какой кодировке находиться используемый ею текст (в т.ч. находящийся в файле) - то узнать её можно. Можно даже заодно узнать на каком языке этот текст. Единственно - это должен быть нормальный текст на этом языке. Абракадабра плохо распознаётся. :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.10.2007, 05:47:01 |
|
||
|
В какой кодировке студия создает строки?
|
|||
|---|---|---|---|
|
#18+
А, ну да, pandrew меня опередил... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.10.2007, 05:48:18 |
|
||
|
В какой кодировке студия создает строки?
|
|||
|---|---|---|---|
|
#18+
Amdei пишет: > неизвестно в какой кодировке находиться используемый ею текст (в т.ч. > находящийся в файле) - то узнать её можно. > Можно даже заодно узнать на каком языке этот текст. Достоверно, или с какой-то вероятностью ? Второе не называется "можно узнать", оно называется "можно попробовать угадать". Posted via ActualForum NNTP Server 1.4 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.10.2007, 10:24:23 |
|
||
|
В какой кодировке студия создает строки?
|
|||
|---|---|---|---|
|
#18+
Достоверно, естественно, не получиться. Ибо метод-таки вероятностный. :) Пример: MnogoSearch MGuesser вероятность ошибки первого рода для текстов более 200-символов - менее 1% И это при условии что там алгоритм совсем топорный. Есть пример удачного решения и более сложной задачи: установления идентичности одного и тогоже имени человека на разных языках (почти на всех языках мира). Это шоб когда в новостях на разных континентах пишут про какую-то персону, знать что это про одну и ту же. Среднюю длинну и имени представляешь? Ошибок - кот наплакал. Но там и математика соответствующая. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.10.2007, 16:34:05 |
|
||
|
В какой кодировке студия создает строки?
|
|||
|---|---|---|---|
|
#18+
Amdei wrote: > Достоверно, естественно, не получиться. > Ибо метод-таки вероятностный. :) > Пример: MnogoSearch MGuesser > вероятность ошибки первого рода для текстов более 200-символов - менее 1% > И это при условии что там алгоритм совсем топорный. > > Есть пример удачного решения и более сложной задачи: установления > идентичности одного и тогоже имени человека на разных языках (почти на > всех языках мира). Это шоб когда в новостях на разных континентах пишут > про какую-то персону, знать что это про одну и ту же. Среднюю длинну и > имени представляешь? Ошибок - кот наплакал. Но там и математика > соответствующая. А что в этом сложого? имхо - все-таки сам текст новостей совпадает по языку и кодировке с именами. Да и, я данного ресурса, сохраняется от ыпуска к выпуску. На худой конец - имена короткие, их проще закодировать во всех известных кодировках и вперед. Кстати, AFAIK, это и будет самой серьезной математикой для пределения кодировки. Я как-то пробовал написать такое - использовние цепочек из двух символов распознает кодировку по 10-20 буквам нормального текста. И на практике (я использую его в xemacs), некорректные распознавания были только для специально подобраных мною текстов или очень кротких (одно-два слова). Хотя это, все равно, не показатель. Posted via ActualForum NNTP Server 1.4 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.10.2007, 20:02:15 |
|
||
|
В какой кодировке студия создает строки?
|
|||
|---|---|---|---|
|
#18+
Там основная сложность не в том, чтобы определить в какой кодировке это имя написано, а в том, чтобы понять что это одно и то же имя. Piter=Пётр. А как это по арабски будет, где гласные не пишутся? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.10.2007, 01:18:53 |
|
||
|
|

start [/forum/topic.php?fid=57&msg=34876822&tid=2027958]: |
0ms |
get settings: |
5ms |
get forum list: |
13ms |
check forum access: |
2ms |
check topic access: |
2ms |
track hit: |
422ms |
get topic data: |
6ms |
get forum data: |
1ms |
get page messages: |
29ms |
get tp. blocked users: |
1ms |
| others: | 188ms |
| total: | 669ms |

| 0 / 0 |
