Гость
Форумы / WinForms, .Net Framework [игнор отключен] [закрыт для гостей] / вместо русских символов при получении данных из FireBird DB знаки вопроса / 6 сообщений из 6, страница 1 из 1
19.08.2016, 18:53
    #39294761
Syrex
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
вместо русских символов при получении данных из FireBird DB знаки вопроса
Вместо русских букв из БД возвращаются знаки вопроса ("?????" )
Код: c#
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
using FirebirdSql.Data.FirebirdClient;
FbConnectionStringBuilder fb_con = new FbConnectionStringBuilder();
fb_con.Charset = FbCharset.None.ToString();
fb_con.UserID = "SYSDBA";
fb_con.Password = "masterkey";
fb_con.Database = "mainDB.FDB";
fb_con.ServerType = FbServerType.Embedded;
fb = new FbConnection(fb_con.ToString());
//создаем подключение
//string connectionString = string.Format("User={0};Password={1};Database={2};DataSource=localhost;Charset=NONE;ServerType=1;ctype_none=NONE;", "", "", @"");
fb = new FbConnection(fb_con.ToString());
fb.Open();
FbDatabaseInfo fb_inf = new FbDatabaseInfo(fb);
FbCommand selCom = new FbCommand("select CAT0_NAME from CAT0", fb);
FbDataReader dr = selCom.ExecuteReader();
while (dr.Read()) {
    string inS = dr[0].ToString();
    var newStr = Encoding.ASCII;
    byte[] getBytes = newStr.GetBytes(inS);
    inS = utf8.GetString(getBytes, 0, getBytes.Length);
    textBox1.AppendText(inS + "\n");
}
dr.Close();



Хотя в IBExpert текст виден нормально.
Где косячу или куда копать??

PS В аттаче скриншот с настройками: БД, Таблицы, Результатов из таблицы
База не моя и править её я не могу
...
Рейтинг: 0 / 0
19.08.2016, 19:02
    #39294764
Syrex
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
вместо русских символов при получении данных из FireBird DB знаки вопроса
...
Рейтинг: 0 / 0
20.08.2016, 09:53
    #39294870
Cat2
Модератор форума
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
вместо русских символов при получении данных из FireBird DB знаки вопроса
Syrex,

Вы бы лучше посмотрели, какая у Вас в базе кодировка.
В шарпе - UTF-8
...
Рейтинг: 0 / 0
22.08.2016, 09:31
    #39295315
Syrex
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
вместо русских символов при получении данных из FireBird DB знаки вопроса
Cat2,
Подскажите, а как это сделать?
...
Рейтинг: 0 / 0
22.08.2016, 10:16
    #39295337
Syrex
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
вместо русских символов при получении данных из FireBird DB знаки вопроса
На запрос в IBExpert
Код: plsql
1.
select * from rdb$database


CHARACTER_SET_NAME='ASCII'

при установке данной кодировки при подключении все равно выдает в запросах ?????????? вместо русских символов
...
Рейтинг: 0 / 0
22.08.2016, 10:21
    #39295342
Dima T
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
вместо русских символов при получении данных из FireBird DB знаки вопроса
ИМХУ надо спросить в форуме по FB

Я так понимаю надо править эту строчку, как-то задать в ней ASCII
Код: c#
1.
fb_con.Charset = FbCharset.None.ToString();


а эту конвертацию вообще выкинуть, т.к. вопросики скорее всего появляются раньше, и поэтому их конвертировать бесполезно.
Код: c#
1.
2.
3.
    //var newStr = Encoding.ASCII;
    //byte[] getBytes = newStr.GetBytes(inS);
    //inS = utf8.GetString(getBytes, 0, getBytes.Length);
...
Рейтинг: 0 / 0
Форумы / WinForms, .Net Framework [игнор отключен] [закрыт для гостей] / вместо русских символов при получении данных из FireBird DB знаки вопроса / 6 сообщений из 6, страница 1 из 1
Целевая тема:
Создать новую тему:
Автор:
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]