Форум программистов, компьютерный форум, киберфорум
C# для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск  
 
 
Рейтинг 4.68/47: Рейтинг темы: голосов - 47, средняя оценка - 4.68
 Аватар для ololo111
166 / 52 / 36
Регистрация: 13.04.2012
Сообщений: 620

Поддержка русских букв в Visual Studio Code

29.11.2020, 16:23. Показов 10795. Ответов 30
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Кто сталкивался с подобным? Как сделать чтобы русские буквы отображались нормально, он из текстового файла считывает строчки и выводит их в таком виде
Миниатюры
Поддержка русских букв в Visual Studio Code  
0
Лучшие ответы (1)
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
29.11.2020, 16:23
Ответы с готовыми решениями:

Поддержка русских букв в CDONTS
Возникла проблема. Формируется тело email письма в HTML формате для отправки через CDONTS. В тело письма вставляется из Access 2000. Далее...

Поддержка русских букв в Jmail
Возникла проблема. Формируется тело email письма в HTML формате для отправки через JMail. В тело письма вставляется из Access 2000. Далее...

Поддержка intelliSens в Visual studio code
Здравствуйте. совсем недавно начал изучать библиотеку jQuery. кодю в Visual studio code версия 1.18.1 естественно пакет jquery: ...

30
1534 / 541 / 127
Регистрация: 09.01.2018
Сообщений: 1,758
29.11.2020, 20:01
Студворк — интернет-сервис помощи студентам
Цитата Сообщение от ololo111 Посмотреть сообщение
И он выдал всё на русском, а через парсинг выдаёт крокозяблики
Значит с файлом все хорошо.
Я без понятия что это за либа и как она работает. Могу предположить, что где-то в конфигурации сканеру можно задать кодировку, а по умолчанию он использует 437 или какую то еще. Вообщем, вам надо читать документацию к ней.
0
Администратор
Эксперт .NET
 Аватар для OwenGlendower
18399 / 14330 / 5370
Регистрация: 17.03.2014
Сообщений: 29,009
Записей в блоге: 1
29.11.2020, 20:03
ololo111, код класса Scanner неверно работает с кодировками. В случае многобайтовой кодировки он может испортить текст. Попробуйте так создавать Scanner
C#
1
2
3
4
            Scanner scanner = new Scanner();
 
            string source = File.ReadAllText(fname); // Читаем файл в нужной кодировке
            scanner.SetSource(source, 0); // Передаем текст сканеру
Добавлено через 51 секунду
Это если сообщение transetor верно
Цитата Сообщение от transetor Посмотреть сообщение
Нашел откуда код http://it.mmcs.sfedu.ru/wiki/%... 1%8B_GPLex
и код взят именно оттуда.
1
 Аватар для ololo111
166 / 52 / 36
Регистрация: 13.04.2012
Сообщений: 620
29.11.2020, 20:35  [ТС]
Цитата Сообщение от OwenGlendower Посмотреть сообщение
Попробуйте так создавать Scanner
Если я вместо того что было:
C#
1
2
3
               FileStream file = new FileStream(name, FileMode.Open);
               Scanner scnr = new Scanner(file);
               Console.WriteLine("File: " + name);
1) Запишу вот так:
C#
1
2
3
4
         FileStream file = new FileStream(name, FileMode.Open);
        Scanner scnr = new Scanner();
        string source = File.ReadAllText(name); // Читаем файл в нужной кодировке
        scnr.SetSource(source, 0); // Передаем текст сканеру
То он выдаёт File C:\Users\qwer\Downloads\6.2/test.txt not found...
2) Если удалю во 2м случае строчку:
C#
1
FileStream file = new FileStream(name, FileMode.Open);
то файл он находит, но скайнер не распознаёт русские буквы, как бы они не были бы в нём записаны
C++
1
Text            [а-яА-Я\xD090-\xD0AF\xD0B0-\xD18F\xD001\xD191]+
Идёт слово с 1й буквой: A, и он на ней сразу же запинается Position (1,0): Unknown symbol А
3) Есть ещё 3й вариант:
C#
1
2
3
        Scanner scnr = new Scanner(new FileStream(name, FileMode.Open));
        string source = File.ReadAllText(name); // Читаем файл в нужной кодировке
        scnr.SetSource(source, 0); // Передаем текст сканеру
Но при нём опять File not found...
Значит единственный верный вариант №2, но на нём скайнер не распознаёт кириллицу
0
Администратор
Эксперт .NET
 Аватар для OwenGlendower
18399 / 14330 / 5370
Регистрация: 17.03.2014
Сообщений: 29,009
Записей в блоге: 1
29.11.2020, 20:58
ololo111, можете выложить весь свой код и входной файл (в одном архиве)?

Добавлено через 48 секунд
Цитата Сообщение от ololo111 Посмотреть сообщение
Значит единственный верный вариант №2
Да. Первый и третий варианты это не то.
0
 Аватар для ololo111
166 / 52 / 36
Регистрация: 13.04.2012
Сообщений: 620
29.11.2020, 21:16  [ТС]
Цитата Сообщение от OwenGlendower Посмотреть сообщение
Да. Первый и третий варианты это не то.
Получается скайнер распознаёт кириллицу только в своём извращённом виде, если его заставить работать с кириллицей в нормальном виде, то он её не видит
0
Администратор
Эксперт .NET
 Аватар для OwenGlendower
18399 / 14330 / 5370
Регистрация: 17.03.2014
Сообщений: 29,009
Записей в блоге: 1
29.11.2020, 21:23
ololo111, не видя вашего кода и входного файла, точно ответить не получится.
0
 Аватар для ololo111
166 / 52 / 36
Регистрация: 13.04.2012
Сообщений: 620
29.11.2020, 21:40  [ТС]
Цитата Сообщение от OwenGlendower Посмотреть сообщение
не видя вашего кода и входного файла, точно ответить не получится.
там всё
Вложения
Тип файла: rar 6.2.rar (365.4 Кб, 6 просмотров)
0
Администратор
Эксперт .NET
 Аватар для OwenGlendower
18399 / 14330 / 5370
Регистрация: 17.03.2014
Сообщений: 29,009
Записей в блоге: 1
29.11.2020, 22:52
ololo111, нужно

а) пересохранить файл LexIn.lex в UTF-8 с BOM

б) SCANNER.bat исправить на
Windows Batch file
1
%1gplex /unicode /out:"%1Scanner.cs" "%1LexIn.lex"
Тогда вроде корректно начинает работать.
1
 Аватар для ololo111
166 / 52 / 36
Регистрация: 13.04.2012
Сообщений: 620
29.11.2020, 23:48  [ТС]
Цитата Сообщение от OwenGlendower Посмотреть сообщение
SCANNER.bat исправить на
Исправил
Цитата Сообщение от OwenGlendower Посмотреть сообщение
пересохранить файл LexIn.lex в UTF-8 с BOM
А тут если пересохранить в UTF-8 с BOM то при запуске выскакивает ошибка.... Может это работает только на 10ке?
Миниатюры
Поддержка русских букв в Visual Studio Code   Поддержка русских букв в Visual Studio Code  
0
Администратор
Эксперт .NET
 Аватар для OwenGlendower
18399 / 14330 / 5370
Регистрация: 17.03.2014
Сообщений: 29,009
Записей в блоге: 1
30.11.2020, 00:10
Лучший ответ Сообщение было отмечено ololo111 как решение

Решение

ololo111, судя по скриншоту команде gplex не передается аргумент /unicode. Забыл что вы пользуетесь VSCode для компиляции. В ней нужно открыть tasks.json и исправить команду generateScanner добавив аргумент
JSON
1
2
3
4
5
6
7
8
9
10
11
    {
        "label": "generateScanner",
        "command": "${workspaceFolder}/gplex.exe",
        "type": "shell",
        "args": [
            "/unicode",
            "/out:Scanner.cs",
            "LexIn.lex"
        ],
        "problemMatcher": []
    }
2
 Аватар для ololo111
166 / 52 / 36
Регистрация: 13.04.2012
Сообщений: 620
30.11.2020, 00:26  [ТС]
Благодарю!
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
30.11.2020, 00:26

Вывод русских букв в Visual Studio 2008
#include <iostream> using namespace std; #include <windows.h> char*Rus(const char*); int main() { long pop1 = 4789426, pop2...

Visual Studio Code Есть ли поддержка сохранения файла в 2х местах или запуска батника после сохранения
Здравствуйте. Кто знает есть ли в Visual Studio Code возможность сохранять файцл в 2х местах или запускать определенный батник после...

Почему у меня MASM32 не правильно работает в Visual studio когда уже установлен внутри настройки visual studio code ?
Почему у меня MASM32 не правильно работает в Visual studio когда уже установлен внутри настройки visual studio code ?

Зачем для создания формы на Angular использовать Visual Studio и Visual Studio Code?
Мне нужно написать форму на ангуляре, которая будет выполнять Select, Insert,Delete из базы данных. Нашла видео, в котором показывают...

Mb_function и поддержка русских букв в кодировке UTF-8
Доброе время суток, я только-только начал познавать азы PHP. Столкнулся с проблемой поддержки русских букв. Есть задача: Первая...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
31
Ответ Создать тему
Новые блоги и статьи
Мобильное приложение ColorStep
pavlinmavlin 17.09.2026
Реализовал приложение Красный, Зеленый, Синий в Unity3d + c#. Название изменил на ColorStep. Приложение прошло модерацию и теперь доступно для скачивания. Делал его сам, шаг за шагом — и вот,. . .
Запрет дублирования строк в табличной части
Maks 13.09.2026
Реализация из решения ниже выполнена на нетиповом справочнике "Нормы ТО" с табличной часть "Виды ТО", разработанного в КА2, со следующими реквизитами: - ВидТО (СправочникСсылка. ВидыТО); - ВидГСМ. . .
Скрипты Tampermonkey для CyberForum, ChatGPT, Claude и пр.
Jin X 06.09.2026
Скрипты Tampermonkey для CyberForum, ChatGPT, Claude и пр. Работая с форумом и нейросетями в браузере часто хочется что-то подкорректировать или добавить какого-то функционала. Ниже прикреплён. . .
Программа опроса у.з. расходомера SLS-720F
Argus19 02.09.2026
Программа опроса у. з. расходомера SLS-720F Программа опрашивает один раз в минуту три ультразвуковых расходомера SLS-720F через интерфейс RS-485 по протоколу Modbus RTU. Опрашиваются регистры. . .
Hyper-V: Компьютер должен поддерживать доверенный платформенный модуль 2.0.
Maks 31.08.2026
При установке Windows 11 на виртуальную машину Hyper-V 2-го поколения вылезла такая ошибка: Решение: в параметрах виртуальной машины, в разделе "Безопасность" (Security) активировать флаг. . .
Архитектура биовида Стива в Майнкрафте: Зачем бонобо кубический каннибализм
anaschu 30.08.2026
Кубический Вагинокапитализм в Minecraft: Математический инвариант ОДУ и рок Стивов-бонобо Главная задача разработанной «Модели Всего» — наглядно продемонстрировать наличие системной «судьбы». . .
Оттачиваю умение писать js программы.
russiannick 30.08.2026
Проектом выходного дня стало написание Книги шифров Виженера. Итогом стала версия 200, синий туман. Синий туман назван так, потому что замораживает текст под собой. Нажатие синих кнопок управляют. . .
мат медиц модель 30. презентация проекта
anaschu 27.08.2026
хоп хоп хоп хидахоп, а я кладую))
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru