Как на С# считать из файла, например, первые 30 символов?
В си было fl.getline в цикле, но я помню плохо
>>124793482Придется все таки бампать...Бамп
бамп
Бумп
>>124793220 (OP)File.OpenRead - создает стримридер, так посимвольно можешь считать, если надо 30 символов толькоFile.ReadAllText - считать все строки и там уже делай с ними что хочешь
>>124793220 (OP)https://msdn.microsoft.com/ru-ru/library/97e90x91(v=vs.110).aspx>>124794328Не учи детей плохому.
>>124794410А в чем разница между File.OpenRead и TextReader ?
>>124794656В обходе предоставленного интерфейса (читай "через Хабаровск").
>>124793220 (OP)https://msdn.microsoft.com/en-us/library/system.io.streamreader(v=vs.110).aspx
>>124795075Твоя правда, для более общего случая лучше так.124794410-кун
>>124793220 (OP)Какого файла? Спокойно ставишь на пюпитр и читаешь. Какие 30? Можешь вообще по ступеням считать, если так сходу не сообразишь. Вот смотри, как все просто - если у тебя C#, то ступени по порядку от I до VII - C# - D# - E# (вообще, это F, но раз уже у тебя C#, а не Db, то изволь по правилам читать) - F# - G# - A# - H# (опять же, это C, но правила обозначения требуют. А взял бы Db и не так парился бы, всего пять бемолей). Удачи
>>124795615
>>124795744Спасибо, я старался.
>>124795075я перечитал все ссылки с MSDN по стримридер и не нашел нужного решения. Неужели нет что то вроде reader.ReadToEnd()только он не будет считывать весь текст файла от начала до конца, а, например от начала, до 30 символов.>>124795615файл текстовый, первые 30 символов текста надо считать и на экран вывести, изучаю С# 3 дня. Понятия не имею о чем ты говоришь, честно, как бы стыдно мне не было.
>>124795817> от начала, до 29 символафикс
>>124795817Он тебе гамму До-диез написал. Ебанутый. Хотя и правда чаще используют Ре-бемоль.
>>124793220 (OP)substr(file_get_contents(file), 0, 29);
Лол
>>124795817>файл текстовый, первые 30 символов текста надо считать и на экран вывести, изучаю С# 3 дня. Понятия не имею о чем ты говоришь, честно, как бы стыдно мне не было.Ебанутый? Он тебе про музыку написал. Даже я это понял.мимо быдлокодер на шарпе
>>124796123а, ну значит меня затролили, я в ней ничего не смыслю
>>124796111эммм... Это РHP?
>>124793220 (OP)стаковерфлов, а не сука ебаный двач
>>124796426Да.
https://msdn.microsoft.com/ru-ru/library/system.io.textreader.readblock(v=vs.110).aspxПотом из массива символов уже строку формируешь.Если считываешь из потока, используй унаследованный от TextReader класс StreamReader.
>>124796566Лол за такие вопросы там убивают нахуй. Тем более это платина.
>>124796616What that guy said.
>>124796851А что не так? Могу сэмпл написать, но мне лень
>>124793220 (OP)Кто-то на первый курс поступил?
>>124796851А как правильнее тут that или this
А кроме ReadToEnd() и ReadLine() есть еще что нибудь? И что еще за TextReader.ReadBlock? Понятия не имею как им пользоваться, даже кода найти с ним не могу. Может есть у кого примеры его использования?
>>124797017What did that/this/the guy say?
>>124797176Ты совсем обнаглел, что ли?https://msdn.microsoft.com/ru-ru/library/system.io.streamreader.readblock(v=vs.110).aspxДальше сам.>>124796980Да я тебя двачевал просто, лол.
>>124798042но там же не написано как он в коде реализовываться должен, ну или написан. Только синтаксис
>>124798243Вам больше не стоит заниматься программированием.
>>124798243Что значит "как в коде реализовываться должен"? По синтаксису, ёпт. Ты серьёзно такой тугой, или толстить пытаешься?
>>124798511только этот семестр дозанимаюсь и все. Тем более выше уже говорил, что только 3 день изучаю
>>124798571ты понимаешь что он возвращает только КОЛИЧЕСТВО считываемых символов, а не сами символы?
>>124799197А сами символы в массив записываются. В глаза долбишься?
>>124799464Ой? Ну нихуя я тупой, и вправду, спасибо большое, правда, очень благодарен.Может тогда еще кое с чем поможешь? Почему если в тексте русские буквы, то он на экран выводит знаки вопросов. Как такое фиксится? Ну или ладно, сам найду, ты и так уже помог. В общем спасибо
>>124800023Да, поищи лучше сам. Тебе и так тут как минимум два анона помогало. Кстати, успокой меня, скажи - ты же тян на самом деле?
>>124800023С кодировками что-то, скорее всего. Возможно, виндовская консоль использует какую-то кривую кодировку.
>>124800138да если и так, то что?
>>124800307если я так напишу, то уберутся вопросики?static void Main(string[] args){ FileStream file1 = new FileStream("d:\\test.txt", FileMode.Open); StreamReader reader = new StreamReader(file1, Encoding.Unicode);}
>>124800326Да ничего, я не женоненавистник. Просто уточняю. Меня бы успокоило, если это так.
>>124800554using (StreamReader SR = new StreamReader(new FIleStream(string path, FileMode ...),Encoding.GetEncoding(1251)))
>>124800554Ну это зависит от кодировки файла, который ты считываешь. Скорее всего, или Encoding.UTF8, или Encoding.GetEncoding(1251).
А есть какой нибудь способ узнать полностью ли заполнен массив?>>124800981>>124801023спасибо вам большое, а если в тексте и киррилица и латиница, то Encoding.GetEncoding(1251) их все нормально считать должен?
>>124800981using - удобная штука, но хуёвый паттерн. Лучше сразу привыкать ручками писать .Dispose () по надобности.
>>124801023>>124800981и в правду помогло, благодарю судари
>>124801169Я же тебе выше писал, что это зависит от кодировки, в которой файл записан. Конечно, CP1251 понимает и кириллицу, и латиницу, но сохранён ли твой файл в этой кодировке - вопрос исследовательский. Если нет - попробуй Encoding.UTF8 или Encoding.GetEncoding(866). Это самые распространённые.И да, так ты тян?
>>124801169Массив всегда полностью заполнен чисто по определению. Если ты про данный случай, то тебе ReadBlock вернет, сколько символов ты считал.
>>124801169да, с кодировкой 1251 нормально будет читать латиницу и кириллицу, но не спецсимволы типа ▲▲ ▲>>124801184Почему нужно привыкать, если, насколько я знаю, по завершению блока using вызывается только dispose() для объектов, созданных в объявлении юзинга?
>>124801184почему using - хуёвый паттерн? и разве это не оператор?
saga
>>124801403>>124801500using - оператор, а вот использование этого оператора - паттерн.Хуёвый потому, что никто не запрещает писать вещи вродеpublic void M ( Stream s ) { using ( s ) { ... }}Выглядит дико, но многие юзингоёбы, которым в недостаточно развитый мозг вдолбили полезность этого паттерна, так делают.>>124801545Ах ты шалун, сагаешь без сажи.
Да ну вас, короче, я пока тут ликбез устраивал, целый анимублядский тред проебал.
>>124797001>>124797001кто-то дебил такие вопросы задавать на дваче
>>124793220 (OP)ОПушек, раз природа гуглить не научила и не можешь в MSDN Library скачай уже шилдта/троелсена и прям глава ВВОДО-ВЫВОД. Находишь упоминание стримидера, дают список функций для чтения ввода & применяешь.
А вот и розовый отряд подтянулся.
>>124802595>Изучаю до-диез третий день на жавараш>какНикак
Помню когда на С++ работала можно было вставлять спецификатор функции printf() такой: "%c"А в C# есть подобный аналог?
>>124806321Есть. string.Format("{0}{1}","a",'a').Без дополнительной спецификации формата заменяет %s, %i и %c.И да, ты всё-таки тян. Я знал, я знал.
>>124806762:3
>>124807016Асечку, писечку?
>>124806321Почему бы не использовать в C++ cout? К чему нужен старый printf()?