Проблема с сохранением файла пишет что «Этот файл содержит текст в формате Юникод» подробнее внутри.
Вообщем устоновил винду хр. Создаю текст на русском, на аглийском у меня он его нормально сохраняет в блокноте. А если пишу текст латышскими буквами или какими то другими, то при сохранение выдает ету ошибку «Этот файл содержит текст в формате Юникод, который будет потерян, если вы сохраниете этот файл в формате ANSI . Что бы сохранить данные в формате Юникод, нажмите кнопку «Отмена» и выберете один из вариантов сохранения в формате Юникод. Продолжить?»
Блин но я не хочу каждый документ сохранять таким дурацким путем, это же туфта кокая та. Что делать подскажите
Aza Yuldashev
софтвилла. ру (анг. яз. ) -> поиск программы -> внутри архива есть всё, что вам нужно
В поиске наберите — notepad 2
Категория — Текст
Анна Комарова
Чтобы сохранить данные в формате Юникод: – при появлении диалогового окна с сообщением «Этот файл содержит текст в формате Юникод, который будет потерян, если вы сохраните этот файл в формате ANSI…» нажмите кнопку Отмена; – в выпадающем списке Кодировка диалогового окна «Сохранить как» выберите один из вариантов сохранения в формате Юникод (например, Юникод или UTF-8).
что-то грузит цп (заявка № 218864)
Junior Member Регистрация 07.05.2018 Сообщений 34 Вес репутации 21
что-то грузит цп
Здраствуйте, помогите, что-то грузит процессор и во время работы сбраузер подвисает , и еще когда играю в игры иногда сворачивается на рабочий стол, и возле курсора появляется колёсико загрузки.Еще поверх браузера немогу открыть любую папку.
Будь в курсе! Будь в курсе!
Надоело быть жертвой? Стань профи по информационной безопасности, получай самую свежую информацию об угрозах и средствах защиты от ведущего российского аналитического центра Anti-Malware.ru:
07.05.2018, 19:23 #2
Cyber Регистрация 11.05.2011 Сообщений 2,285 Вес репутации 375
Уважаемый(ая) naki21, спасибо за обращение на наш форум!
Помощь при заражении комьютера на VirusInfo.Info оказывается абсолютно бесплатно. Хелперы, в самое ближайшее время, ответят на Ваш запрос. Для оказания помощи необходимо предоставить логи сканирования утилитой Autologger, подробнее можно прочитать в правилах оформления запроса о помощи.
Информация
Если вы хотите получить персональную гарантированную помощь в приоритетном режиме, то воспользуйтесь платным сервисом Помогите+.
Если наш сайт окажется полезен Вам и у Вас будет такая возможность — пожалуйста поддержите проект.
09.05.2018, 03:33 #3
Senior Helper Регистрация 18.05.2012 Адрес Searching . Сообщений 12,835 Вес репутации 321
AVZ выполнить следующий скрипт.
Важно на ОС: Windows Vista/7/8/8.1 AVZ запускайте через контекстное меню проводника от имени Администратора.
begin ShowMessage('Внимание! Перед выполнением скрипта AVZ автоматически закроет все сетевые подключения.'+#13#10+'После перезагрузки компьютера подключения к сети будут восстановлены в автоматическом режиме.'); ExecuteFile('net.exe', 'stop tcpip /y', 0, 15000, true); if not IsWOW64 then begin SearchRootkit(true, true); SetAVZGuardStatus(True); end; StopService('mssecsvc2.0'); DeleteService('mssecsvc2.0'); QuarantineFile('C:\WINDOWS\mssecsvc.exe', ''); DeleteFile('C:\WINDOWS\mssecsvc.exe', '32'); BC_ImportAll; ExecuteSysClean; BC_Activate; ExecuteRepair(10); ExecuteWizard('SCU', 2, 3, true); RebootWindows(true); end.
После выполнения скрипта компьютер перезагрузится.
После перезагрузки:
— Выполните в AVZ:
begin CreateQurantineArchive(GetAVZDirectory+'quarantine.zip'); end.
Файл quarantine.zip из папки AVZ загрузите по ссылке » Прислать запрошенный карантин » вверху темы.
— Подготовьте лог AdwCleaner и приложите его в теме.
CCNA, CCNP, CCNA Security, CCDA, CCDP
MCP, Microsoft Specialist: Srv Virtualization with WinSrv Hyper-V and System Center
Это понравилось:
09.05.2018, 09:27 #4
Junior Member Регистрация 07.05.2018 Сообщений 34 Вес репутации 21
по поводу карантина пишет такое -Результат загрузки
Ошибка загрузки. Данный файл уже был загружен
Ошибка загрузки. Данный файл уже был загружен
Сообщение от SQ
AVZ выполнить следующий скрипт.
Важно на ОС: Windows Vista/7/8/8.1 AVZ запускайте через контекстное меню проводника от имени Администратора.
begin ShowMessage('Внимание! Перед выполнением скрипта AVZ автоматически закроет все сетевые подключения.'+#13#10+'После перезагрузки компьютера подключения к сети будут восстановлены в автоматическом режиме.'); ExecuteFile('net.exe', 'stop tcpip /y', 0, 15000, true); if not IsWOW64 then begin SearchRootkit(true, true); SetAVZGuardStatus(True); end; StopService('mssecsvc2.0'); DeleteService('mssecsvc2.0'); QuarantineFile('C:\WINDOWS\mssecsvc.exe', ''); DeleteFile('C:\WINDOWS\mssecsvc.exe', '32'); BC_ImportAll; ExecuteSysClean; BC_Activate; ExecuteRepair(10); ExecuteWizard('SCU', 2, 3, true); RebootWindows(true); end.
После выполнения скрипта компьютер перезагрузится.
После перезагрузки:
— Выполните в AVZ:
begin CreateQurantineArchive(GetAVZDirectory+'quarantine.zip'); end.
Файл quarantine.zip из папки AVZ загрузите по ссылке » Прислать запрошенный карантин » вверху темы.
— Подготовьте лог AdwCleaner и приложите его в теме.
Ошибка загрузки. Данный файл уже был загружен
09.05.2018, 10:19 #5
Senior Helper Регистрация 18.05.2012 Адрес Searching . Сообщений 12,835 Вес репутации 321
— Скачайте Farbar Recovery Scan Tool и сохраните на Рабочем столе.
Примечание: необходимо выбрать версию, совместимую с Вашей операционной системой. Если Вы не уверены, какая версия подойдет для Вашей системы, скачайте обе и попробуйте запустить. Только одна из них запустится на Вашей системе.
- Запустите программу двойным щелчком. Когда программа запустится, нажмите Yes для соглашения с предупреждением.
- Убедитесь, что в окне Optional Scan отмечены «List BCD» и «Driver MD5».
- Нажмите кнопку Scan.
- После окончания сканирования будет создан отчет (FRST.txt) в той же папке, откуда была запущена программа. Пожалуйста, прикрепите отчет в следующем сообщении.
- Если программа была запущена в первый раз, будет создан отчет (Addition.txt). Пожалуйста, прикрепите его в следующем сообщении.
CCNA, CCNP, CCNA Security, CCDA, CCDP
MCP, Microsoft Specialist: Srv Virtualization with WinSrv Hyper-V and System Center
Это понравилось:
10.05.2018, 07:08 #6
Junior Member Регистрация 07.05.2018 Сообщений 34 Вес репутации 21
возможно как нибудь удалить l2p ? Я его удалял, но файлы всеравно находятся ..
Сообщение от SQ
— Скачайте Farbar Recovery Scan Tool и сохраните на Рабочем столе.
Примечание: необходимо выбрать версию, совместимую с Вашей операционной системой. Если Вы не уверены, какая версия подойдет для Вашей системы, скачайте обе и попробуйте запустить. Только одна из них запустится на Вашей системе.
- Запустите программу двойным щелчком. Когда программа запустится, нажмите Yes для соглашения с предупреждением.
- Убедитесь, что в окне Optional Scan отмечены «List BCD» и «Driver MD5».
- Нажмите кнопку Scan.
- После окончания сканирования будет создан отчет (FRST.txt) в той же папке, откуда была запущена программа. Пожалуйста, прикрепите отчет в следующем сообщении.
- Если программа была запущена в первый раз, будет создан отчет (Addition.txt). Пожалуйста, прикрепите его в следующем сообщении.
возможно как нибудь удалить l2p ? Я его удалял, но файлы всеравно находятся ..
10.05.2018, 09:17 #7
Senior Helper Регистрация 18.05.2012 Адрес Searching . Сообщений 12,835 Вес репутации 321
Речь об этом?
FF NetworkProxy: Mozilla\Firefox\Profiles\ehd6jf7c.default -> autoconfig_url", "file:///C:/Program%20Files%20(x86)/i2p/scripts/i2pProxy.pac" S4 i2p; "C:\Program Files (x86)\i2p\I2Psvc.exe" -s "C:\Program Files (x86)\i2p\wrapper.config"
Вы какие-то китайские программы ставили ранее?
2018-04-13 18:33 - 2018-04-13 18:33 - 000000035 _____ C:\Windows\SysWOW64\⿈¦ 2018-05-09 04:53 - 2016-02-11 16:00 - 000000080 _____ C:\Users\Lucky\AppData\Local剜捯獫慴慇敭屳呇⁁屖湥楴汴浥湥湩潦
- Скопируйте приведенный ниже текст в Блокнот и сохраните файл как fixlist.txt в ту же папку откуда была запущена утилита Farbar Recovery Scan Tool:
CreateRestorePoint: CloseProcesses: File: C:\Program Files (x86)\Stardock\Object Desktop\IconPackager\iprepair.dll FF Plugin: @microsoft.com/GENUINE -> disabled [No File] FF Plugin-x32: @microsoft.com/GENUINE -> disabled [No File] File: C:\Windows\SysWOW64\ASGT.exe File: D:\Games\Arc\ArcService.exe S3 TesSafe; C:\Windows\system32\TesSafe.sys [1134048 2018-04-16] (TENCENT) File: C:\Windows\SysWOW64\Drivers\vdmxodi0.sys ShellIconOverlayIdentifiers: [00avg] -> => -> No File ContextMenuHandlers3: [00avg] -> => -> No File Reboot:
CCNA, CCNP, CCNA Security, CCDA, CCDP
MCP, Microsoft Specialist: Srv Virtualization with WinSrv Hyper-V and System Center
Это понравилось:
11.05.2018, 06:19 #8
Junior Member Регистрация 07.05.2018 Сообщений 34 Вес репутации 21
1.Да это оно
2. нет китайские не ставил
3. мне ваш бот присалал сообщение, а в нём : Причина: дубль
4.Можете порекомендовать куда обратится по поводу :Когда играю или игра включена я нечего не трогаю, игра сворачивается на рабочий стол, и возле курсора появляется колёсико загрузки. ( думал антивирус, даже вырубил его, но проблема не пропала)
5. вот файл
11.05.2018, 07:00 #9
Senior Helper Регистрация 18.05.2012 Адрес Searching . Сообщений 12,835 Вес репутации 321
Сообщение от naki21
3. мне ваш бот присалал сообщение, а в нём : Причина: дубль
Дубль, обычно в случае если два сообщения схожи по смыслу.
- Скопируйте приведенный ниже текст в Блокнот и сохраните файл как fixlist.txt в ту же папку откуда была запущена утилита Farbar Recovery Scan Tool:
CreateRestorePoint: CloseProcesses: FF NetworkProxy: Mozilla\Firefox\Profiles\ehd6jf7c.default -> autoconfig_url", "file:///C:/Program%20Files%20(x86)/i2p/scripts/i2pProxy.pac" S4 i2p; "C:\Program Files (x86)\i2p\I2Psvc.exe" -s "C:\Program Files (x86)\i2p\wrapper.config" 2018-04-13 18:33 - 2018-04-13 18:33 - 000000035 _____ C:\Windows\SysWOW64\⿈¦ 2018-05-09 04:53 - 2016-02-11 16:00 - 000000080 _____ C:\Users\Lucky\AppData\Local剜捯獫慴慇敭屳呇⁁屖湥楴汴浥湥湩潦 Reboot:
Касаемо игры не подскажу, давайте посмотрим, по итогу лечения.
CCNA, CCNP, CCNA Security, CCDA, CCDP
MCP, Microsoft Specialist: Srv Virtualization with WinSrv Hyper-V and System Center
Это понравилось:
11.05.2018, 11:57 #10
Junior Member Регистрация 07.05.2018 Сообщений 34 Вес репутации 21
11.05.2018, 18:29 #11
Senior Helper Регистрация 18.05.2012 Адрес Searching . Сообщений 12,835 Вес репутации 321
по каким-то причинам fixlist не верно сработал, так как китайские символы были заменены иероглифами.
CCNA, CCNP, CCNA Security, CCDA, CCDP
MCP, Microsoft Specialist: Srv Virtualization with WinSrv Hyper-V and System Center
Это понравилось:
11.05.2018, 21:02 #12
Junior Member Регистрация 07.05.2018 Сообщений 34 Вес репутации 21
SQ, когда я сохраняю в блокнот мне пишет такое :» Этот файл содержит текст в формате Юникод, который будет потерян, если вы сохраняете этот файл как файл в формате ANSI. Чтобы сохранить данные в формате Юникод, нажмите кнопку «Отмена» и выберите один из вариантов сохранения в формате Юникод.Продолжть»
SQ, а тут дата 2016 год, это когда эта фигня была установлена ? 2018-05-09 04:53 — 2016-02-11 16:00 — 000000080 _____ C:\Users\Lucky\AppData\Local剜捯獫慴慇敭屳呇⁁屖湥楴汴浥湥湩潦
з,ы. просто обращался год назад на форум её вроде не было
11.05.2018, 22:17 #13
Senior Helper Регистрация 18.05.2012 Адрес Searching . Сообщений 12,835 Вес репутации 321
Сохраните код в Юникод и выполните еще раз то что в #9 сообщение, получается в инсталяторе приложения файл мог быть создан в 2016, а уже появиться вас когда угодно.
CCNA, CCNP, CCNA Security, CCDA, CCDP
MCP, Microsoft Specialist: Srv Virtualization with WinSrv Hyper-V and System Center
Это понравилось:
12.05.2018, 01:43 #14
Junior Member Регистрация 07.05.2018 Сообщений 34 Вес репутации 21
SQ, скажите, это нормально чт ов диспетчере задач, процес «svchost.exe» грузит на 144112 кб ?
SQ, а еще какой-то процесс KMWDSrv.exe хотя у меня клавиатура обычная и мышка trust gxt 152
12.05.2018, 20:08 #15
Junior Member Регистрация 07.05.2018 Сообщений 34 Вес репутации 21
12.05.2018, 21:21 #16
Senior Helper Регистрация 18.05.2012 Адрес Searching . Сообщений 12,835 Вес репутации 321
Скачайте программу Universal Virus Sniffer и сделайте полный образ автозапуска uVS.
CCNA, CCNP, CCNA Security, CCDA, CCDP
MCP, Microsoft Specialist: Srv Virtualization with WinSrv Hyper-V and System Center
Это понравилось:
13.05.2018, 01:05 #17
Junior Member Регистрация 07.05.2018 Сообщений 34 Вес репутации 21
SQ,вот
13.05.2018, 08:20 #18
Senior Helper Регистрация 18.05.2012 Адрес Searching . Сообщений 12,835 Вес репутации 321
;uVS v4.0.11 [http://dsrt.dyndns.org] ;Target OS: NTv6.1 v400c OFFSGNSAVE BREG delref WMI_.[FUCKYOUMM2_FILTER] delref %SystemDrive%\PROGRAM FILES (X86)\GOOGLE\UPDATE\1.3.28.15\PSMACHINE.DLL delref %SystemDrive%\PROGRAM FILES (X86)\GOOGLE\UPDATE\1.3.28.15\PSMACHINE_64.DLL delref %SystemDrive%\PROGRAM FILES (X86)\GOOGLE\UPDATE\1.3.29.1\PSMACHINE.DLL delref %SystemDrive%\PROGRAM FILES (X86)\GOOGLE\UPDATE\1.3.29.1\PSMACHINE_64.DLL delref %SystemDrive%\PROGRAM FILES (X86)\GOOGLE\UPDATE\1.3.29.5\PSMACHINE.DLL delref %SystemDrive%\PROGRAM FILES (X86)\GOOGLE\UPDATE\1.3.29.5\PSMACHINE_64.DLL delref %SystemDrive%\PROGRAM FILES (X86)\GOOGLE\UPDATE\1.3.30.3\PSMACHINE.DLL delref %SystemDrive%\PROGRAM FILES (X86)\GOOGLE\UPDATE\1.3.30.3\PSMACHINE_64.DLL delref %SystemDrive%\PROGRAM FILES (X86)\GOOGLE\UPDATE\1.3.31.6\PSMACHINE.DLL delref %SystemDrive%\PROGRAM FILES (X86)\GOOGLE\UPDATE\1.3.31.6\PSMACHINE_64.DLL delref %SystemDrive%\PROGRAM FILES (X86)\GOOGLE\UPDATE\1.3.32.8\PSMACHINE.DLL delref %SystemDrive%\PROGRAM FILES (X86)\GOOGLE\UPDATE\1.3.32.8\PSMACHINE_64.DLL delref %SystemDrive%\PROGRAM FILES (X86)\GOOGLE\UPDATE\1.3.33.3\PSMACHINE.DLL delref %SystemDrive%\PROGRAM FILES (X86)\GOOGLE\UPDATE\1.3.33.3\PSMACHINE_64.DLL delref %SystemDrive%\PROGRAM FILES (X86)\I2P\I2P.EXE delref %SystemDrive%\PROGRAM FILES (X86)\I2P\I2PSVC.EXE delref %SystemDrive%\PROGRAM FILES (X86)\PHYXION.NET\DRIVER SWEEPER\DRIVER SWEEPER.EXE delref %SystemDrive%\PROGRAM FILES (X86)\PHYXION.NET\DRIVER SWEEPER\UNINS000.EXE delref D:\PROCESS HACKER 2\PEVIEW.EXE delref D:\PROCESS HACKER 2\PROCESSHACKER.EXE delref D:\PROCESS HACKER 2\UNINS000.EXE restart
CCNA, CCNP, CCNA Security, CCDA, CCDP
MCP, Microsoft Specialist: Srv Virtualization with WinSrv Hyper-V and System Center
Как работают кодировки текста. Откуда появляются «кракозябры». Принципы кодирования. Обобщение и детальный разбор
Данная статья имеет цель собрать воедино и разобрать принципы и механизм работы кодировок текста, подробно этот механизм разобрать и объяснить. Полезна она будет тем, кто только примерно представляет, что такое кодировки текста и как они работают, чем отличаются друг от друга, почему иногда появляются не читаемые символы, какой принцип кодирования имеют разные кодировки.
Чтобы получить детальное понимание этого вопроса придется прочитать и свести воедино не одну статью и потратить довольно значительное время на это. В данном материале же это все собрано воедино и по идее должно сэкономить время и разбор на мой взгляд получился довольно подробный.
О чем будет под катом: принцип работы одно байтовых кодировок (ASCII, Windows-1251 и т.д.), предпосылки появления Unicode, что такое Unicode, Unicode-кодировки UTF-8, UTF-16, их отличия, принципиальные особенности, совместимость и несовместимость разных кодировок, принципы кодирования символов, практический разбор кодирования и декодирования.
Вопрос с кодировками сейчас конечно уже потерял актуальность, но все же знать как они работают сейчас и как работали раньше и при этом не потратить много времени на это думаю лишним не будет.
Предпосылки Unicode
Начать думаю стоит с того времени когда компьютеризация еще не была так сильно развита и только набирала обороты. Тогда разработчики и стандартизаторы еще не думали, что компьютеры и интернет наберут такую огромную популярность и распространенность. Собственно тогда то и возникла потребность в кодировке текста. В каком то же виде нужно было хранить буквы в компьютере, а он (компьютер) только единицы и нули понимает. Так была разработана одно-байтовая кодировка ASCII (скорее всего она не первая кодировка, но она наиболее распространенная и показательная, по этому ее будем считать за эталонную). Что она из себя представляет? Каждый символ в этой кодировке закодирован 8-ю битами. Несложно посчитать что исходя из этого кодировка может содержать 256 символов (восемь бит, нулей или единиц 2 8 =256).
Первые 7 бит (128 символов 2 7 =128) в этой кодировке были отданы под символы латинского алфавита, управляющие символы (такие как переносы строк, табуляция и т.д.) и грамматические символы. Остальные отводились под национальные языки. То есть получилось что первые 128 символов всегда одинаковые, а если хочешь закодировать свой родной язык пожалуйста, используй оставшуюся емкость. Собственно так и появился огромный зоопарк национальных кодировок. И теперь сами можете представить, вот например я находясь в России беру и создаю текстовый документ, у меня по умолчанию он создается в кодировке Windows-1251 (русская кодировка использующаяся в ОС Windows) и отсылаю его кому то, например в США. Даже то что мой собеседник знает русский язык, ему не поможет, потому что открыв мой документ на своем компьютере (в редакторе с дефолтной кодировкой той же самой ASCII) он увидит не русские буквы, а кракозябры. Если быть точнее, то те места в документе которые я напишу на английском отобразятся без проблем, потому что первые 128 символов кодировок Windows-1251 и ASCII одинаковые, но вот там где я написал русский текст, если он в своем редакторе не укажет правильную кодировку будут в виде кракозябр.
Думаю проблема с национальными кодировками понятна. Собственно этих национальных кодировок стало очень много, а интернет стал очень широким, и в нем каждый хотел писать на своем языке и не хотел чтобы его язык выглядел как кракозябры. Было два выхода, указывать для каждой страницы кодировки, либо создать одну общую для всех символов в мире таблицу символов. Победил второй вариант, так создали Unicode таблицу символов.
Небольшой практикум ASCII
Возможно покажется элементарщиной, но раз уж решил объяснять все и подробно, то это надо.
Вот таблица символов ASCII:
Тут имеем 3 колонки:
- номер символа в десятичном формате
- номер символа в шестнадцатиричном формате
- представление самого символа.
Unicode
С предпосылками создания общей таблицы для всех в мире символов, разобрались. Теперь собственно, к самой таблице. Unicode — именно эта таблица и есть (это не кодировка, а именно таблица символов). Она состоит из 1 114 112 позиций. Большинство этих позиций пока не заполнены символами, так что вряд ли понадобится это пространство расширять.
Разделено это общее пространство на 17 блоков, по 65 536 символов в каждом. Каждый блок содержит свою группу символов. Нулевой блок — базовый, там собраны наиболее употребляемые символы всех современных алфавитов. Во втором блоке находятся символы вымерших языков. Есть два блока отведенные под частное использование. Большинство блоков пока не заполнены.
Итого емкость символов юникода составляет от 0 до 10FFFF (в шестнадцатиричном виде).
Записываются символы в шестнадцатиричном виде с приставкой «U+». Например первый базовый блок включает в себя символы от U+0000 до U+FFFF (от 0 до 65 535), а последний семнадцатый блок от U+100000 до U+10FFFF (от 1 048 576 до 1 114 111).
Отлично теперь вместо зоопарка национальных кодировок, у нас есть всеобъемлющая таблица, в которой зашифрованы все символы которые нам могут пригодиться. Но тут тоже есть свои недостатки. Если раньше каждый символ был закодирован одним байтом, то теперь он может быть закодирован разным количеством байтов. Например для кодирования всех символов английского алфавита по прежнему достаточно одного байта например тот же символ «o» (англ.) имеет в юникоде номер U+006F, то есть тот же самый номер как и в ASCII — 6F в шестнадцатиричной и 111 в десятеричной. А вот для кодирования символа «U+103D5» (это древнеперсидская цифра сто) — 103D5 в шестнадцатиричной и 66 517 в десятеричной, тут нам потребуется уже три байта.
Решить эту проблему уже должны юникод-кодировки, такие как UTF-8 и UTF-16. Далее речь пойдет про них.
UTF-8
UTF-8 является юникод-кодировкой переменной длинны, с помощью которой можно представить любой символ юникода.
Давайте поподробнее про переменную длину, что это значит? Первым делом надо сказать, что структурной (атомарной) единицей этой кодировки является байт. То что кодировка переменной длинны, значит, что один символ может быть закодирован разным количеством структурных единиц кодировки, то есть разным количеством байтов. Так например латиница кодируется одним байтом, а кириллица двумя байтами.
Немного отступлю от темы, надо написать про совместимость ASCII и UTF
То что латинские символы и основные управляющие конструкции, такие как переносы строк, табуляции и т.д. закодированы одним байтом делает utf-кодировки совместимыми с кодировками ASCII. То есть фактически латиница и управляющие конструкции находятся на тех же самых местах как в ASCII, так и в UTF, и то что закодированы они и там и там одним байтом и обеспечивает эту совместимость.
Давайте возьмем символ «o»(англ.) из примера про ASCII выше. Помним что в таблице ASCII символов он находится на 111 позиции, в битовом виде это будет 01101111 . В таблице юникода этот символ — U+006F что в битовом виде тоже будет 01101111 . И теперь так, как UTF — это кодировка переменной длины, то в ней этот символ будет закодирован одним байтом. То есть представление данного символа в обеих кодировках будет одинаково. И так для всего диапазона символов от 0 до 128. То есть если ваш документ состоит из английского текста то вы не заметите разницы если откроете его и в кодировке UTF-8 и UTF-16 и ASCII (прим. в UTF-16 такие символы все равно будут закодированы двумя байтами, по этому вы не увидите разницы, если ваш редактор будет игнорировать нулевые байты), и так до момента пока вы не начнете работать с национальным алфавитом.
Сравним на практике как будет выглядеть фраза «Hello мир» в трех разных кодировках: Windows-1251 (русская кодировка), ISO-8859-1 (кодировка западно-европейских языков), UTF-8 (юникод-кодировка). Суть данного примера состоит в том что фраза написана на двух языках. Посмотрим как она будет выглядеть в разных кодировках.
В кодировке ISO-8859-1 нет таких символов «м», «и» и «р».
Теперь давайте поработаем с кодировками и разберемся как преобразовать строку из одной кодировки в другую и что будет если преобразование неправильное, или его нельзя осуществить из за разницы в кодировках.
Будем считать что изначально фраза была записана в кодировке Windows-1251. Исходя из таблицы выше запишем эту фразу в двоичном виде, в кодировке Windows-1251. Для этого нам потребуется всего только перевести из десятеричной или шестнадцатиричной системы (из таблицы выше) символы в двоичную.
01001000 01100101 01101100 01101100 01101111 00100000 11101100 11101000 11110000
Отлично, вот это и есть фраза «Hello мир» в кодировке Windows-1251.
Теперь представим что вы имеете файл с текстом, но не знаете в какой кодировке этот текст. Вы предполагаете что он в кодировке ISO-8859-1 и открываете его в своем редакторе в этой кодировке. Как сказано выше с частью символов все в порядке, они есть в этой кодировке, и даже находятся на тех же местах, но вот с символами из слова «мир» все сложнее. Этих символов в этой кодировке нет, а на их местах в кодировке ISO-8859-1 находятся совершенно другие символы. А конкретно «м» — позиция 236, «и» — 232. «р» — 240. И на этих позициях в кодировке ISO-8859-1 находятся следующие символы позиция 236 — символ «ì», 232 — «è», 240 — «ð»
Значит фраза «Hello мир» закодированная в Windows-1251 и открытая в кодировке ISO-8859-1 будет выглядеть так: «Hello ìèð». Вот и получается что эти две кодировки совместимы лишь частично, и корректно перекодировать строку из одной кодировке в другую не получится, потому что там просто напросто нет таких символов.
Тут и будут необходимы юникод-кодировки, а конкретно в данном случае рассмотрим UTF-8. То что символы в ней могут быть закодированы разным количеством байтов от 1 до 4 мы уже выяснили. Теперь стоит сказать что с помощью UTF могут быть закодированы не только 256 символов, как в двух предыдущих, а вобще все символы юникода
Работает она следующим образом. Первый бит каждого байта кодирующего символ отвечает не за сам символ, а за определение байта. То есть например если ведущий (первый) бит нулевой, то это значит что для кодирования символа используется всего один байт. Что и обеспечивает совместимость с ASCII. Если внимательно посмотрите на таблицу символов ASCII то увидите что первые 128 символов (английский алфавит, управляющие символы и знаки препинания) если их привести к двоичному виду, все начинаются с нулевого бита (будьте внимательны, если будете переводить символы в двоичную систему с помощью например онлайн конвертера, то первый нулевой ведущий бит может быть отброшен, что может сбить с толку).
01001000 — первый бит ноль, значит 1 байт кодирует 1 символ -> «H»
01100101 — первый бит ноль, значит 1 байт кодирует 1 символ -> «e»
Если первый бит не нулевой то символ кодируется несколькими байтами.
Для двухбайтовых символов первые три бита должны быть такие — 110
110 10000 10 111100 — в начале 110, значит 2 байта кодируют 1 символ. Второй байт в таком случае всегда начинается с 10. Итого отбрасываем управляющие биты (начальные, которые выделены красным и зеленым) и берем все оставшиеся ( 10000111100 ), переводим их в шестнадцатиричный вид (043С) -> U+043C в юникоде равно символ «м».
для трех-байтовых символов в первом байте ведущие биты — 1110
1110 1000 10 000111 10 1010101 — суммируем все кроме управляющих битов и получаем что в 16-ричной равно 103В5, U+103D5 — древнеперситдская цифра сто ( 10000001111010101 )
для четырех-байтовых символов в первом байте ведущие биты — 11110
11110 100 10 001111 10 111111 10 111111 — U+10FFFF это последний допустимый символ в таблице юникода ( 100001111111111111111 )
Теперь, при желании, можем записать нашу фразу в кодировке UTF-8.
UTF-16
UTF-16 также является кодировкой переменной длинны. Главное ее отличие от UTF-8 состоит в том что структурной единицей в ней является не один а два байта. То есть в кодировке UTF-16 любой символ юникода может быть закодирован либо двумя, либо четырьмя байтами. Давайте для понятности в дальнейшем пару таких байтов я буду называть кодовой парой. Исходя из этого любой символ юникода в кодировке UTF-16 может быть закодирован либо одной кодовой парой, либо двумя.
Начнем с символов которые кодируются одной кодовой парой. Легко посчитать что таких символов может быть 65 535 (2в16), что полностью совпадает с базовым блоком юникода. Все символы находящиеся в этом блоке юникода в кодировке UTF-16 будут закодированы одной кодовой парой (двумя байтами), тут все просто.
символ «o» (латиница) — 00000000 01101111
символ «M» (кириллица) — 00000100 00011100
Теперь рассмотрим символы за пределами базового юникод диапазона. Для их кодирования потребуется уже две кодовые пары (4 байта). И механизм их кодирования немного сложнее, давайте по порядку.
Для начала введем понятия суррогатной пары. Суррогатная пара — это две кодовые пары используемые для кодирования одного символа (итого 4 байта). Для таких суррогатных пар в таблице юникода отведен специальный диапазон от D800 до DFFF. Это значит, что при преобразовании кодовой пары из байтового вида в шестнадцатиричный вы получаете число из этого диапазона, то перед вами не самостоятельный символ, а суррогатная пара.
Чтобы закодировать символ из диапазона 10000 — 10FFFF (то есть символ для которого нужно использовать более одной кодовой пары) нужно:
- из кода символа вычесть 10000(шестнадцатиричное) (это наименьшее число из диапазона 10000 — 10FFFF)
- в результате первого пункта будет получено число не больше FFFFF, занимающее до 20 бит
- ведущие 10 бит из полученного числа суммируются с D800 (начало диапазона суррогатных пар в юникоде)
- следующие 10 бит суммируются с DC00 (тоже число из диапазона суррогатных пар)
- после этого получатся 2 суррогатные пары по 16 бит, первые 6 бит в каждой такой паре отвечают за определение того что это суррогат,
- десятый бит в каждом суррогате отвечает за его порядок если это 1 то это первый суррогат, если 0, то второй
Для примера зашифруем символ, а потом расшифруем. Возьмем древнеперсидскую цифру сто (U+103D5):
- 103D5 — 10000 = 3D5
- 3D5 = 0000000000 1111010101 (ведущие 10 бит получились нулевые приведем это к шестнадцатиричному числу, получим 0 (первые десять), 3D5 (вторые десять))
- 0 + D800 = D800 ( 110110 0 000000000 ) первые 6 бит определяют что число из диапазона суррогатных пар десятый бит (справа) нулевой, значит это первый суррогат
- 3D5 + DC00 = DFD5 ( 110111 1 111010101 ) первые 6 бит определяют что число из диапазона суррогатных пар десятый бит (справа) единица, значит это второй суррогат
- итого данный символ в UTF-16 — 1101100000000000 1101111111010101
- переведем в шестнадцатиричный вид = D822DE88 (оба значения из диапазона суррогатных пар, значит перед нами суррогатная пара)
- 110110 0 000100010 — десятый бит (справа) нулевой, значит первый суррогат
- 110111 1 010001000 — десятый бит (справа) единица, значит второй суррогат
- отбрасываем по 6 бит отвечающих за определение суррогата, получим 0000100010 1010001000 (8A88)
- прибавляем 10000 (меньшее число суррогатного диапазона) 8A88 + 10000 = 18A88
- смотрим в таблице юникода символ U+18A88 = Tangut Component-649. Компоненты тангутского письма.
Вот некоторые интересные ссылки по данной теме:
habr.com/ru/post/158895 — полезные общие сведения по кодировкам
habr.com/ru/post/312642 — про юникод
unicode-table.com/ru — сама таблица юникод символов
Этот файл содержит текст в формате юникод который будет потерян
Подскажите пожалуйста! устанавливаю свинарник все прописываю в modDesc файле по инструкции начинаю сохранять и тут:(Этот файл содержит текст в формате Юникод он будет потерян если вы сохраните этот файл как файл в формате ANSI. чтобы сохранить данные в формате юникод нажмите кнопку отмена и выберите одно из вариантов сохранения в формате Юникод. Продолжить?) Я нажимаю ок. захожу в игру свинарник есть но он не функционирует(( ПОДСКАЖИТЕ ЧТО ДЕЛАТЬ И КАКОЙ ФОРМАТ СТАВИТЬ??
вот посмотри это видео может чем оно тебе и поможет ВИДЕО
Сообщение отредактировал VAHHOB022 — Понедельник, 02.09.2013, 09:32
Директор совхоза
Группа: Постоянный
Сообщений: 556
Группа: Постоянный
Сообщений: 271
Директор совхоза
Группа: Постоянный
Сообщений: 556
Группа: Постоянный
Сообщений: 271
Разнорабочий
Группа: Пользователи
Сообщений: 18
Группа: Постоянный
Сообщений: 271
Сообщение отредактировал kolya43rus — Понедельник, 02.09.2013, 15:56
satalit368 | Дата: Понедельник, 02.09.2013, 18:18 | Сообщение # 372 |
Группа: Постоянный
Сообщений: 184
Разнорабочий
Группа: Пользователи
Сообщений: 11
Группа: Постоянный
Сообщений: 362
Цитата ( DoMaVeNoK )
Народ подскажите,я с стандартной карты импортировал тригеры только когда я поставил их на своей карте у меня не работает анимация сено в сарае,т.е. когда машина «выдувает солому»сено из земли поднимается на стандарте,а на моей нет,что я не так делаю.
она по любому эта куча соломы про которую ты говоришь есть на твоей карте,просто после импорта она появляется там же где была на стандарте,и никакое перетаскивание этой кучи тебе не поможет,во время игры она или глубоко под землей будет или в воздухе висеть,проще сделай так экспортируй из группы animals группу для коров cowsHusbandry полностью и потом импортируй на свою,после импорта вставь ее в группу animals, потом просто перемещай полностью эту группу cowsHusbandry туда, куда тебе надо и уже там расставишь все как тебе надо про текстуры не забывай чтоб не были объекты белыми
и еще если есть желание то вот готовый архив с этой группой cowsHusbandry скачать ничего не надо просто разархивируй,а папку помести в папку с твоей картой куда тебе будет угодно, без разницы ,после открой свою карту и сделай импорт потом сделай так как написано выше,
Сообщение отредактировал VAHHOB022 — Понедельник, 02.09.2013, 20:34
satalit368 | Дата: Понедельник, 02.09.2013, 21:41 | Сообщение # 375 |