Вы должны войти, чтобы создавать сообщения и темы.

Чтение текстового блокнота из интернета [Решено]

Страница 1 из 2►

Добрый день! Как можно читать текстовой файл из интернета? К примеру из GitHub. После того как произошло чтение в каком то файле в проводнике добавляются строки. К примеру твик под номером 9 W10T. Связанный с файлом hosts. Спасибо вам больше за уделённое время!

Добрый 🖐
Ответ на Ваш вопрос дан в курсе Уроки C#

В любой непонятной ситуации переходи на beta  © Win 10 Tweaker
Цитата: XpucT от 15.11.2020, 16:26

Добрый 🖐
Ответ на Ваш вопрос дан в курсе Уроки C#

Спасибо огромное! Я читал ещё на прошлом сайте вы скидывали кусочек кода проверки телеметрии, так вот получается у вас тернарно код сделан без if ?

Как вариант:

// Объявили пустой список строк
List<string> list;

// Использую WebClient
using (WebClient wc = new WebClient())

    // Получилии список строк из файла по URL
    list = wc.DownloadString(URL).Split(new char[] { '\r', '\n' }, StringSplitOptions.RemoveEmptyEntries).ToList();

┐('~`;)┌
Всё это показывалось и рассказывалось на канале.


Вопрос про тернарность и if не понятен.
Если добрались до LINQ, то if и тернарность не нужны.

В любой непонятной ситуации переходи на beta  © Win 10 Tweaker

Каждый раз удивляюсь в вас. Вы убили столько времени на своё дитя под именем w10t а в итоге вас ещё умудряются критиковать, настолько люди не ценят чужой труд... Мою благодарность не описать в словах!

Лайкнули XpucT, Сергей и Андрей
XpucTСергейАндрей
Цитата: XpucT от 15.11.2020, 16:32

Как вариант:

 
 
 
 
// Объявили пустой список строк
List<string> list;
 
// Использую WebClient
using (WebClient wc = new WebClient())
 
// Получилии список строк из файла по URL
list = wc.DownloadString(URL).Split(new char[] { '\r', '\n' }, StringSplitOptions.RemoveEmptyEntries).ToList();
// Объявили пустой список строк List<string> list; // Использую WebClient using (WebClient wc = new WebClient()) // Получилии список строк из файла по URL list = wc.DownloadString(URL).Split(new char[] { '\r', '\n' }, StringSplitOptions.RemoveEmptyEntries).ToList();
 
// Объявили пустой список строк
List<string> list;

// Использую WebClient
using (WebClient wc = new WebClient())

    // Получилии список строк из файла по URL
    list = wc.DownloadString(URL).Split(new char[] { '\r', '\n' }, StringSplitOptions.RemoveEmptyEntries).ToList();

┐('~`;)┌
Всё это показывалось и рассказывалось на канале.


Вопрос про тернарность и if не понятен.
Если добрались до LINQ, то if и тернарность не нужны.

// Сам файл
string hosts = $@"{System32}\drivers\etc\hosts";
if (File.Exists(hosts) & File.ReadAllText(hosts).Contains("telemetry"))
    File.Create(hosts);
File.Copy(hosts, hosts + " (Original)");
{
    // URL список со строками
    string URL = "https://raw.githubusercontent.com/crazy-max/WindowsSpyBlocker/master/data/hosts/spy.txt";
    // Объявили пустой список строк
    List<string> list;
    // Использую WebClient
    using WebClient wc = new WebClient();
    // Получили список строк из файла по URL
    list = wc.DownloadString(URL).Split(new char[] { '\r', '\n' }, StringSplitOptions.RemoveEmptyEntries).ToList();
}

Вчера истратил больше пяти часов чтобы повторить вашу реализацию. Подскажите пожалуйста чего не хватает в коде для его успешного выполнения?

Добрый вечер 🖐
У Вас ошибка в 12 строке. 
Должно быть так:

// у Вас 
using WebClient wc = new WebCilent();

// а должно быть
using (WebClient wc = new WebClient())

 

Добрый🖐
Пользуюсь Visual Studio самой последней версией. И в сообщениях он рекомендует с using проворачивает такое:

using (WebClient wc = new WebClient())
// Сообщения: Оператор using можно успростить
using WebClient wc = new WebCilent();

 

Так это у Вас уже C# 9 выставлен. Да, можно и так.

В любой непонятной ситуации переходи на beta  © Win 10 Tweaker
Цитата: XpucT от 15.11.2020, 17:10

Так это у Вас уже C# 9 выставлен. Да, можно и так.

Что-то метод плохо отрабатывает... Подскажите что можно сделать?

Попробуйте путь указать полный.
Скопированоstring hosts = @"C:\Windows\System32\drivers\etc\hosts";

Дело не в этом. Пока что метод работает по такому принципу:
Если в файле hosts есть слово telemetry то давайте создадим его копию и сам файл (И тут должно выполняться уже само условия а то есть чтение из интернета)

А причём тут слово telemetry?
Сделайте условие: Если файл hosts есть, то сделай копию, и запиши в оригинальный файл строки из интернета.

Это легко. И уже так делал, но лишний вес программы и лишние 400 строк кода не хочу делать. Именно поэтому я обращаюсь к вам к любителям своего дела а особенно к Хачатуру.

Страница 1 из 2►