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

Как при чтении файла указать кодировку - Visual Basic .NET/.NET 4.x

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

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

http://www.cyberforum.ru/vb-net/thread1643522.html
Есть переменная
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
Я подобрал для вас темы с готовыми решениями и ответами на вопрос .NET 4.x Как при чтении файла указать кодировку (Visual Basic .NET):

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

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

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

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

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

15
Монфрид
1208 / 1018 / 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 / 33 / 6
Регистрация: 07.08.2013
Сообщений: 702
Записей в блоге: 1
23.11.2014, 19:26  [ТС] #4
Цитата Сообщение от Visualist Посмотреть сообщение
как, откуда и куда считывается текст?
Берется из файла и помещается в текстбокс.
0
Монфрид
1208 / 1018 / 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 / 33 / 6
Регистрация: 07.08.2013
Сообщений: 702
Записей в блоге: 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
8745 / 7749 / 3317
Регистрация: 17.03.2014
Сообщений: 15,243
Записей в блоге: 1
24.11.2014, 14:55 #9
Anderis49, чтобы прочитать текстовый файл надо знать его кодировку. Если ты заранее не знаешь кодировку, то чтобы гарантировано прочитать файл можешь воспользоваться функцией GetStreamReader и библиотекой ude которая умеет угадывать кодировку.
0
Anderis49
-46 / 33 / 6
Регистрация: 07.08.2013
Сообщений: 702
Записей в блоге: 1
24.11.2014, 17:55  [ТС] #10
OwenGlendower,
можешь воспользоваться функцией GetStreamReader и библиотекой ude
Не могу. Не знаю как.
Я же только учусь....
Можешь привести пример использования?

А если не файл, а текст?
Заслать текст прежде в файл, а потом его открывать?
0
OwenGlendower
Супер-модератор
Эксперт .NET
8745 / 7749 / 3317
Регистрация: 17.03.2014
Сообщений: 15,243
Записей в блоге: 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 / 33 / 6
Регистрация: 07.08.2013
Сообщений: 702
Записей в блоге: 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 / 33 / 6
Регистрация: 07.08.2013
Сообщений: 702
Записей в блоге: 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
Привет! Вот еще темы с решениями:

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

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

Изменение кодировки текста при чтении/записи файла txt
Здравствуйте! Код ниже изменяет файл (отбрасывает последний знак в файле...

Как узнать кодировку файла?
Народ возникла проблема в фаиле есть данные: but1=1 but2=1 ...


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

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

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