Форум программистов, компьютерный форум, киберфорум
Наши страницы
Visual Basic .NET
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.67/3: Рейтинг темы: голосов - 3, средняя оценка - 4.67
Anderis49
-46 / 37 / 6
Регистрация: 07.08.2013
Сообщений: 856
Записей в блоге: 1
1

Как при чтении файла указать кодировку

23.11.2014, 17:01. Просмотров 602. Ответов 15
Метки нет (Все метки)

Всем доброго времени суток!

Есть переменная
vb.net
1
 Dim SB As New System.Text.StringBuilder
в ней содержится текст, который отображается знаками вопроса.

Помогите, пожалуйста, изменить кодировку этого текста?
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
23.11.2014, 17:01
Ответы с готовыми решениями:

Как указать кодировку при чтении текстового файла
Я пишу некий парсер логов. Указываю строковое значение, например "образец1",...

Как при чтении файла проверить достигнут ли конец файла?
Как при чтении файла проверить достигнут ли конец файла? Dim Red As...

Как изменить кодировку при открытии файла
Пишу блокнот Открываю txt файл а у меня квадратики(( как изменить...

Как автоматически определить кодировку при открытии текстового файла?
Есть прорамма типа блокнот. Для текста используется RTB. После открытия файла...

Неверная кодировка при чтении из файла
Обнаружил неприятный факт, при чтении текста из файла в Label.Text он...

15
Монфрид
1211 / 1021 / 293
Регистрация: 07.03.2012
Сообщений: 3,243
Завершенные тесты: 2
23.11.2014, 17:31 2
откуда текст этот берётся?
0
Visualist
51 / 51 / 25
Регистрация: 01.02.2014
Сообщений: 201
23.11.2014, 17:32 3
Anderis49, как, откуда и куда считывается текст?
0
Anderis49
-46 / 37 / 6
Регистрация: 07.08.2013
Сообщений: 856
Записей в блоге: 1
23.11.2014, 19:26  [ТС] 4
Цитата Сообщение от Visualist Посмотреть сообщение
как, откуда и куда считывается текст?
Берется из файла и помещается в текстбокс.
0
Монфрид
1211 / 1021 / 293
Регистрация: 07.03.2012
Сообщений: 3,243
Завершенные тесты: 2
23.11.2014, 19:28 5
Цитата Сообщение от Anderis49 Посмотреть сообщение
Берется из файла и помещается в текстбокс.
существует сотня способов взять текст из файла, как берёте его вы?
0
Visualist
51 / 51 / 25
Регистрация: 01.02.2014
Сообщений: 201
23.11.2014, 20:10 6
Anderis49, я это делаю так
vb.net
1
TB.Text = IO.File.ReadAllText(Path, Encoding.Unicode)
Вместо Unicode может быть UTF8, Default и т.д.
0
Anderis49
-46 / 37 / 6
Регистрация: 07.08.2013
Сообщений: 856
Записей в блоге: 1
24.11.2014, 14:29  [ТС] 7
Цитата Сообщение от Visualist Посмотреть сообщение
я это делаю так
Я тоже так делал, но знаки вопроса не исчезают.
0
Visualist
51 / 51 / 25
Регистрация: 01.02.2014
Сообщений: 201
24.11.2014, 14:44 8
Anderis49, Вместо "Unicode" попробуй подставить "UTF8" или "Default".
0
OwenGlendower
Супер-модератор
Эксперт .NET
9332 / 8188 / 3494
Регистрация: 17.03.2014
Сообщений: 16,260
Записей в блоге: 1
24.11.2014, 14:55 9
Anderis49, чтобы прочитать текстовый файл надо знать его кодировку. Если ты заранее не знаешь кодировку, то чтобы гарантировано прочитать файл можешь воспользоваться функцией GetStreamReader и библиотекой ude которая умеет угадывать кодировку.
0
Anderis49
-46 / 37 / 6
Регистрация: 07.08.2013
Сообщений: 856
Записей в блоге: 1
24.11.2014, 17:55  [ТС] 10
OwenGlendower,
можешь воспользоваться функцией GetStreamReader и библиотекой ude
Не могу. Не знаю как.
Я же только учусь....
Можешь привести пример использования?

А если не файл, а текст?
Заслать текст прежде в файл, а потом его открывать?
0
OwenGlendower
Супер-модератор
Эксперт .NET
9332 / 8188 / 3494
Регистрация: 17.03.2014
Сообщений: 16,260
Записей в блоге: 1
24.11.2014, 18:20 11
Anderis49, начни с прочтения статьи Джоэеля Спольски про кодировки: Абсолютный Минимум, который Каждый Разработчик Программного Обеспечения Обязательно Должен Знать о Unicode и Наборах Символов.

Затем добавь ссылку на пакет UDE.CSharp с помощью NuGet. Потом скопируй текст функции GetStreamReader в свою программу и вызывай таким образом:
vb.net
1
2
3
Using reader As StreamReader = GetStreamReader("c:\folder\file.txt")
    Dim text As String = reader.ReadToEnd()
End Using
Цитата Сообщение от Anderis49 Посмотреть сообщение
А если не файл, а текст?
К тексту в памяти это уже поздно применять. Строка в памяти не берется с потолка вообще-то. Ты или используешь строковое значение в программе и тогда тебе не о чем беспокоиться или получаешь его из внешнего источника (файл, сеть и т.д) и тогда можно применять метод указанный выше. Разберись с файлами для начала.
1
Visualist
51 / 51 / 25
Регистрация: 01.02.2014
Сообщений: 201
24.11.2014, 18:35 12
Anderis49, ты пробовал вместо "Unicode" подставить "UTF8" или "Default"?
vb.net
1
TB.Text = IO.File.ReadAllText(Path, Encoding.Unicode)
0
Anderis49
-46 / 37 / 6
Регистрация: 07.08.2013
Сообщений: 856
Записей в блоге: 1
24.11.2014, 19:10  [ТС] 13
Цитата Сообщение от Visualist Посмотреть сообщение
ты пробовал вместо "Unicode" подставить "UTF8" или "Default"?
Да!

Добавлено через 33 минуты
Цитата Сообщение от OwenGlendower Посмотреть сообщение
Затем добавь ссылку на пакет UDE.CSharp с помощью NuGet.
NuGet скачал и установил, а вот как "добавь ссылку на пакет UDE.CSharp" не знаю
0
Visualist
51 / 51 / 25
Регистрация: 01.02.2014
Сообщений: 201
24.11.2014, 19:13 14
Цитата Сообщение от Anderis49 Посмотреть сообщение
Да!
и что с этого получилось?
0
Anderis49
-46 / 37 / 6
Регистрация: 07.08.2013
Сообщений: 856
Записей в блоге: 1
24.11.2014, 19:15  [ТС] 15
OwenGlendower
Function GetStreamReader(ByVal path) As StreamReader
Тип "CharsetDetector" не определен.

Добавлено через 33 секунды
Цитата Сообщение от Visualist Посмотреть сообщение
и что с этого получилось?
???????????????
0
Visualist
51 / 51 / 25
Регистрация: 01.02.2014
Сообщений: 201
24.11.2014, 19:16 16
Цитата Сообщение от Anderis49 Посмотреть сообщение
???????????????
покажи код своей программы. или добавь в архив, залей сюда свой проект.
0
24.11.2014, 19:16
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
24.11.2014, 19:16

Перевод строки при чтении из файла
Всем привет в LinkLabel берется текст из файла, но у него есть ограничение по...

Ошибка при чтении пустого XML-файла
На жёстком диске есть пустой файл: program_name.xml При попытке его считывания...

Ввод за концом файла при чтении txt
Доброго времени суток! 1) Написал код, который читает файл. Файл выглядит...


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

Или воспользуйтесь поиском по форуму:
16
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru