Модераторы: Partizan, gambit

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> "Ламерские" вопросы, задаем здесь элементарные вопросы 
:(
    Опции темы
Track
Дата 23.12.2010, 16:26 (ссылка) |    (голосов:1) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 37
Регистрация: 18.2.2010

Репутация: нет
Всего: нет



Все таки нашел решение, причем все на тоже странице msdn

Код

IEIFLAG_QUALITY (0x0200)

Passed to the IExtractImage::Extract method to indicate that a higher quality image is requested.

If this flag is not set, IExtractImage retrieves an embedded thumbnail if the file has one, no matter what size the user requests. For example, if the file is 2000x2000 pixels but the embedded thumbnail is only 100x100 pixels and the user does not set this flag, yet requests a 1000x1000 pixel thumbnail, IExtractImage always returns the 100x100 pixel thumbnail. This is by design, since IExtractImage does not scale up. If a larger thumbnail is desired (usually embedded thumbnails are 160x160), this flag must be set.


PM MAIL WWW   Вверх
cream
Дата 24.12.2010, 20:05 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 37
Регистрация: 23.7.2010

Репутация: 1
Всего: 1



Может кто поможет?

У меня для события текстбокса textChanged привязан обработчик.
Как "заставить" его срабатывать только при действиях пользователя, но
не программы?
PM MAIL   Вверх
wester
Дата 24.12.2010, 21:02 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 675
Регистрация: 27.2.2009

Репутация: 3
Всего: 13



cream
завести глобальную переменную, в которую записывать кто вызвал событие.
либо отвязывать событие перед тем как изменять содержимое контрола, а потом обратно на него подписываться.
мне кажется тут какая - то проблема с архитектурой. 


и от меня вопрос!
просматриваю интернет-страницу с русскими буквами.
смотрю в браузере в котором показывает, что отображает в кодировке 1251. 
скачиваю страницу в C# (HttpWebRequest) . Читаю поток HttpWebRequest.GetResponseStream() в кодировке 1251. но когда я пытаюсь, записать в файл то получается абракадабра
WTF ?!
PM MAIL   Вверх
cream
Дата 24.12.2010, 21:24 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 37
Регистрация: 23.7.2010

Репутация: 1
Всего: 1



wester
Спасибо.

А в какой кодировке пишешь?
PM MAIL   Вверх
wester
Дата 24.12.2010, 21:40 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 675
Регистрация: 27.2.2009

Репутация: 3
Всего: 13



cream
пытался в 1251 - не получается. Вот только, что получается
<link rel="search" type="application/opensearchdescription+xml" title="РџРѕРёСЃРє РЅР° rutracker.org" href="http://static.rutracker.org/opensearch.xml">
странно ведь просматриваю в браузере в кодировке "windows-1251"
PM MAIL   Вверх
cream
Дата 24.12.2010, 21:52 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 37
Регистрация: 23.7.2010

Репутация: 1
Всего: 1



wester
это UTF-8 100%
Значит поток нужно преобразовать.

Еще забыл, скачай программу "AkelPad" - хороший текстовый редактор.
В нем видно любые кодировки.

Это сообщение отредактировал(а) cream - 24.12.2010, 21:54
PM MAIL   Вверх
wester
Дата 24.12.2010, 21:55 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 675
Регистрация: 27.2.2009

Репутация: 3
Всего: 13



cream
как преобразовывать ?
Код

//webResp объект типа HttpWebResponse
//webRequest объект типа HttpWebRequest
webResp = (HttpWebResponse) webRequest.GetResponse();
var streamReader = new StreamReader(webResp.GetResponseStream(), Encoding.UTF8);

            var sw = new StreamWriter("C:\\source.txt");
            sw.Write(streamReader.ReadToEnd());
            Console.WriteLine("all write");

Accept-Charset: windows-1251,utf-8;q=0.7,*;q=0.7 
это передается в header

Это сообщение отредактировал(а) wester - 24.12.2010, 22:24
PM MAIL   Вверх
cream
Дата 24.12.2010, 22:53 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 37
Регистрация: 23.7.2010

Репутация: 1
Всего: 1



Попробуй так. У меня получилось:
Код

StreamReader^ reader = gcnew StreamReader(dataStream, System::Text::Encoding::GetEncoding(1251));


Используй "System::Text::Encoding::GetEncoding(1251)".
PM MAIL   Вверх
wester
Дата 24.12.2010, 22:54 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 675
Регистрация: 27.2.2009

Репутация: 3
Всего: 13



cream
пробовал - не помогает ((
PM MAIL   Вверх
cream
Дата 24.12.2010, 23:05 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 37
Регистрация: 23.7.2010

Репутация: 1
Всего: 1



wester
вот пример:
Код

try
{
    WebRequest^ request = WebRequest::Create("http://****acker.org/forum/index.php");

    HttpWebResponse^ response = dynamic_cast<HttpWebResponse^>(request->GetResponse());
    Stream^ dataStream = response->GetResponseStream();

    StreamReader^ reader = gcnew StreamReader(dataStream, System::Text::Encoding::GetEncoding(1251));
    String^ responseFromServer = reader->ReadToEnd();

    String^ fileName = "C:\\source.html";
    FileStream^ fs = gcnew FileStream( fileName, FileMode::CreateNew, FileAccess::Write, FileShare::Read );

    StreamWriter^ sw = gcnew StreamWriter(fs, System::Text::Encoding::GetEncoding(1251));
    sw->Write(responseFromServer);
}
catch (Exception^ eXc)
{
    MessageBox::Show(eXc->ToString());
}

PM MAIL   Вверх
wester
Дата 24.12.2010, 23:09 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 675
Регистрация: 27.2.2009

Репутация: 3
Всего: 13



cream
у меня аналогичный код, 
просто все упирается в то, что кодировка страницы windows-1251, а на всех нормальных сайтах utf-8 (даже на этом, как лиса показывает)

пробовал преобразовывать - ничего 
Код

private void WriteToFile(HttpWebResponse httpWebResponse)
        {
            var streamReader = new StreamReader(httpWebResponse.GetResponseStream());
            var srcEncod = Encoding.GetEncoding(1251);
            var destEncod = Encoding.UTF8;
            var sourceBytes = srcEncod.GetBytes(streamReader.ReadToEnd());
            var resultBytes = Encoding.Convert(srcEncod, destEncod, sourceBytes);
            var resultString = destEncod.GetString(resultBytes);

            var sw = new StreamWriter(@"c:\source.txt");
            sw.WriteLine(resultString);
            Console.WriteLine("All write");

            Console.ReadKey();
        }

PM MAIL   Вверх
cream
Дата 24.12.2010, 23:22 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 37
Регистрация: 23.7.2010

Репутация: 1
Всего: 1



wester
тогда я не пойму проблемы. Т.е. из 1251 нужно преобразовать в UTF8?
Код

StreamWriter^ sw = gcnew StreamWriter(fs, System::Text::Encoding::GetEncoding::UTF8);

PM MAIL   Вверх
wester
Дата 24.12.2010, 23:27 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 675
Регистрация: 27.2.2009

Репутация: 3
Всего: 13



cream
проблема заключается, в том, что мне необходимо сохранить на диск страницу .
причем в правильной кодировке.
PM MAIL   Вверх
cream
Дата 24.12.2010, 23:39 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 37
Регистрация: 23.7.2010

Репутация: 1
Всего: 1



Адрес страницы в личку можешь скинуть?
PM MAIL   Вверх
wester
Дата 24.12.2010, 23:46 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 675
Регистрация: 27.2.2009

Репутация: 3
Всего: 13



cream
да это не секрет 
крупнейший торрент трекер http://rutracker.org
PM MAIL   Вверх
Ответ в темуСоздание новой темы Создание опроса
Прежде чем создать тему, посмотрите сюда:
Partizan
PashaPash

Используйте теги [code=csharp][/code] для подсветки кода. Используйтe чекбокс "транслит" если у Вас нет русских шрифтов.
Что делать если Вам помогли, но отблагодарить помощника плюсом в репутацию Вы не можете(не хватает сообщений)? Пишите сюда, или отправляйте репорт. Поставим :)
Так же не забывайте отмечать свой вопрос решенным, если он таковым является :)


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, mr.DUDA, Partizan, PashaPash.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | .NET для новичков | Следующая тема »


 




[ Время генерации скрипта: 0.1004 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.