Форум программистов, компьютерный форум, киберфорум
C# Windows Forms
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.60/5: Рейтинг темы: голосов - 5, средняя оценка - 4.60
0 / 0 / 0
Регистрация: 15.12.2014
Сообщений: 3
.NET 4.x

Текст из буфера обмена считывается в виде "?"

15.12.2014, 15:07. Показов 984. Ответов 5
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
суть проблемы:
Подписываюсь на события обновления буфера обмена,
получаю значение, если текст в текстовом поле содержит строку из буфера обмена, то что-нить сделать
код:
C#
1
2
3
4
5
6
7
8
9
IDataObject iData = Clipboard.GetDataObject();
                if (iData.GetDataPresent(DataFormats.Text))
                {
                    if (useTracking)
                    {
                        string text = (string)iData.GetData(DataFormats.Text);
                        MessageBox.Show(text);
                    }
                }
выделаю в поле текст в кирилице, жму Ctrl+C, открывается месадж бокс с текстом "????????????????????????? ??? ?????"
откуда куда кодировать не понимаю

пробовал получать текст так:
C#
1
2
byte[] btStr = Encoding.GetEncoding(1251).GetBytes((string) oFromBuffer);
text = Encoding.GetEncoding("ISO-8859-1").GetString(btStr);
ничего не изменилось
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
15.12.2014, 15:07
Ответы с готовыми решениями:

Получить текст из буфера обмена
Итак, проблема в следующем. Я решил написать программу для автоматизации некоторых моих действий Большую часть того что мне было...

Получить текст из буфера обмена
Нужно сабж и присвоить его переменной. Как? Кроссбраузерно. Походу объект Clipboard не поддерживается пока браузерами. Можно...

Как получить текст из буфера обмена
вот код как получить Clipboard.GetText(); чет оно не юзает внешние данные не из программы. as is get Clipboard.GetText(); ? ...

5
 Аватар для craftersmine
31 / 29 / 9
Регистрация: 06.06.2014
Сообщений: 373
15.12.2014, 16:17
Кодировка текста неправильная
0
 Аватар для ViterAlex
8952 / 4864 / 1886
Регистрация: 11.02.2013
Сообщений: 10,246
15.12.2014, 16:19
Попробуй скопировать в буфер при включённой русской раскладке клавиатуры
0
0 / 0 / 0
Регистрация: 15.12.2014
Сообщений: 3
15.12.2014, 16:22  [ТС]
я догадался)

Добавлено через 1 минуту
Цитата Сообщение от ViterAlex Посмотреть сообщение
Попробуй скопировать в буфер при включённой русской раскладке клавиатуры
попробовал, но ничего не изменилось
0
 Аватар для ViterAlex
8952 / 4864 / 1886
Регистрация: 11.02.2013
Сообщений: 10,246
15.12.2014, 16:25
В других приложениях нормально копирует?
0
0 / 0 / 0
Регистрация: 15.12.2014
Сообщений: 3
16.12.2014, 14:07  [ТС]
C#
1
2
3
4
5
6
7
8
9
10
11
Encoding enc = Encoding.GetEncoding("ISO-8859-1");
 
                        string str = "";
                        
                        foreach (EncodingInfo ei in Encoding.GetEncodings())
                        {
                            //str += Encoding.Convert(ei.GetEncoding(), enc, bts) + Environment.NewLine;
                            byte[] btStr = ei.GetEncoding().GetBytes((string)oFromBuffer);
                            str += enc.EncodingName + " " + enc.GetString(btStr) + Environment.NewLine;
                            File.WriteAllText(@"C:\myfile.txt", str);
                        }
результаты получаются разные, но в обоих случаях нормально читаемой русской строки нет

Добавлено через 1 минуту
Цитата Сообщение от ViterAlex Посмотреть сообщение
В других приложениях нормально копирует?
да вполне нормально, мало того, из того приложения в другие нормально копирует.
О и кстати, я на виртуалке. Хостом является линукс. может быть тут еще проблема

Добавлено через 26 минут
Перегрузился в винду, то же самое

Добавлено через 1 час 46 минут
Цитата Сообщение от ViterAlex Посмотреть сообщение
В других приложениях нормально копирует?
Вот теперь получается, по твоему: при русской раскладке нормально, при английской копируются ??????????????7

Добавлено через 19 часов 16 минут
Цитата Сообщение от ViterAlex Посмотреть сообщение
Попробуй скопировать в буфер при включённой русской раскладке клавиатуры
а как быть в этом случае, как получать одинаковый набор символов при различных раскладках?
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
16.12.2014, 14:07
Помогаю со студенческими работами здесь

Как взять текст из буфера обмена?
Как сделать так, чтоб при нажатии на тестовое поле (<INPUT name=text>) его содержимое изменилось на содержимое буфера??? Пожалуста,...

Вставить текст из буфера обмена в Entry
Добрый день. Пока получается использовать только ctrl + v на английской раскладке. Хотелось бы добавить такую возможность на русской, а...

Как получить текст из буфера обмена?
Пишу макрос (Word), вот фрагмент кода: Selection.Copy Windows('EMA').Activate Selection.Find.ClearFormatting With Selection.Find ...

Урок: Копировать текст из буфера обмена
Всем привет, решил поделиться небольшой реализаций копирования текста из буфера обмена например в textBox! private void...

Вставить текст из буфера обмена и выполнить
В буфере обмена будет лежать мой текст Надо чтоб он вывел его в поле ,которое я выбрал вставил и отправил клавишу ENTER Можете помочь с...


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

Или воспользуйтесь поиском по форуму:
6
Ответ Создать тему
Новые блоги и статьи
[Owen Logic] Поддержание уровня воды в резервуаре количеством включённых насосов: моделирование и выбор регулятора
ФедосеевПавел 14.03.2026
Поддержание уровня воды в резервуаре количеством включённых насосов: моделирование и выбор регулятора ВВЕДЕНИЕ Выполняя задание на управление насосной группой заполнения резервуара,. . .
делаю науч статью по влиянию грибов на сукцессию
anaschu 13.03.2026
прикрепляю статью
SDL3 для Desktop (MinGW): Создаём пустое окно с нуля для 2D-графики на SDL3, Си и C++
8Observer8 10.03.2026
Содержание блога Финальные проекты на Си и на C++: hello-sdl3-c. zip hello-sdl3-cpp. zip Результат:
Установка CMake и MinGW 13.1 для сборки С и C++ приложений из консоли и из Qt Creator в EXE
8Observer8 10.03.2026
Содержание блога MinGW - это коллекция инструментов для сборки приложений в EXE. CMake - это система сборки приложений. Здесь описаны базовые шаги для старта программирования с помощью CMake и. . .
Как дизайн сайта влияет на конверсию: 7 решений, которые реально повышают заявки
Neotwalker 08.03.2026
Многие до сих пор воспринимают дизайн сайта как “красивую оболочку”. На практике всё иначе: дизайн напрямую влияет на то, оставит человек заявку или уйдёт через несколько секунд. Даже если у вас. . .
Модульная разработка через nuget packages
DevAlt 07.03.2026
Сложившийся в . Net-среде способ разработки чаще всего предполагает монорепозиторий в котором находятся все исходники. При создании нового решения, мы просто добавляем нужные проекты и имеем. . .
Модульный подход на примере F#
DevAlt 06.03.2026
В блоге дяди Боба наткнулся на такое определение: В этой книге («Подход, основанный на вариантах использования») Ивар утверждает, что архитектура программного обеспечения — это структуры,. . .
Управление камерой с помощью скрипта OrbitControls.js на Three.js: Вращение, зум и панорамирование
8Observer8 05.03.2026
Содержание блога Финальная демка в браузере работает на Desktop и мобильных браузерах. Итоговый код: orbit-controls-threejs-js. zip. Сканируйте QR-код на мобильном. Вращайте камеру одним пальцем,. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru