1Антон1
14 окт 2021 22:32
А ларчик-то 3-его задания просто открывался.... using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.IO;
namespace ConsoleApp6 { class Program { static void Main(string[] args) { int max = 0; string path = "e:\\111.txt"; string[] readText = File.ReadAllLines(path); foreach (string s in readText) { int a = s.Length; if (a >= max) max = a; } Console.WriteLine(max); } } }
|
Kipneer_33
26 фев 2021 07:19
using System; using System.IO; using System.Text;
namespace ConsoleApp1 { class Program { static void Main(string[] args) { { string pathNuturalNumbers = @"E:\nutural_numbers.txt"; string pathColors = @"E:\colors.txt";
StreamWriter writeToFile = new StreamWriter(pathNuturalNumbers, false, Encoding.UTF8); for (int i = 1; i <= 500; i++) { if (i == 500) { writeToFile.Write($"{i}."); break; } writeToFile.Write($"{i}, "); } writeToFile.Close();
StreamReader readToFile = new StreamReader(pathNuturalNumbers); Console.Write(readToFile.ReadToEnd()); readToFile.Close();
string[] colors = { "red", "green", "black", "white", "blue" };
StreamWriter writeToFile2 = new StreamWriter(pathColors, false, Encoding.UTF8); Console.WriteLine("\n"); for (int i = 0; i < colors.Length; i++) { writeToFile2.WriteLine($"{colors[i]}\n"); } writeToFile2.Close();
StreamReader readToFile2 = new StreamReader(pathColors); Console.Write(readToFile2.ReadToEnd()); readToFile2.Close();
string pathText = @"E:\text.txt";
StreamWriter writeToFile3 = new StreamWriter(pathText, false, Encoding.UTF8);
writeToFile3.WriteLine(""); writeToFile3.WriteLine(" "); writeToFile3.WriteLine("I want write code every day!"); writeToFile3.WriteLine("My name's John!");
writeToFile3.Close();
StreamReader readToFile3 = new StreamReader(pathText);
string[] text = new string[4];
byte LenghtLine = 0; byte index = 0;
for (int i = 0; i < text.Length; i++) { text[i] = readToFile3.ReadLine(); } for (int i = 0; i < text.Length; i++) { if(LenghtLine < text[i].Length) { LenghtLine = (byte)text[i].Length; index = (byte)i; } else { continue; } }
Console.WriteLine($"Самая длиная строка в текстовом файле: " + text[index] + "\n"); Console.WriteLine("Длина строки: " + LenghtLine + " Символов.");
readToFile3.Close(); Console.ReadKey(); } } } }
|
aleksey11
29 май 2020 17:43
Задание 3 у меня получилось как-то так.
string way = "C:\\project\\example.txt"; FileStream file1 = new FileStream(way, FileMode.OpenOrCreate); StreamReader reader = new StreamReader(file1); int strLenght=0; do { int l = reader.ReadLine().Length; if(strLenght<l) { strLenght = l; } } while (!reader.EndOfStream); Console.WriteLine(strLenght); file1.Close(); Console.ReadLine();
|
dmitry767
14 апр 2020 19:19
Туго у меня с 3м заданием... Пока так оставлю...
using System; using System.Collections.Generic; using System.IO; using System.Linq;
namespace project8 { class Program { static void Main(string[] args) { int count = System.IO.File.ReadAllLines("d:\\colors.txt").Length; StreamReader reader = new StreamReader("d:\\colors.txt"); string[] arch = new string[count];
for(int y = 0; y < count; y++) { int Str = reader.ReadLine().Length; arch[y] = Convert.ToString(Str); } reader.Close(); Console.WriteLine(arch.Max()); } } }
|
dmitry767
14 апр 2020 15:38
2.
using System; using System.IO;
namespace project7 { class Program { static void Main(string[] args) { string[] stringer = new string[]{"red", "green", "black", "white", "blue"}; StreamWriter writer = new StreamWriter("d:\\colors.txt");
for(int i = 0; i < stringer.Length; i++) { writer.WriteLine(stringer[i]); } writer.Close(); } } }
|
dmitry767
14 апр 2020 15:22
1.
using System; using System.IO;
namespace project6 { class Program { static void Main(string[] args) { StreamWriter writer = new StreamWriter("d:\\numbers.txt"); for(int i = 1; i < 500; i++) { writer.Write($"{i},"); } writer.Close(); } } }
|
Romawkooo
02 окт 2019 23:02
3-е задания class Program { static void Main(string[] args) {
using (StreamReader Read = new StreamReader("C:\\Users\\Roman\\Desktop/SomeText.txt",Encoding.UTF8)) { int startstream = 1; string StringLine = ""; int count = 0; while (!Read.EndOfStream) { StringLine = Read.ReadLine(); count = StringLine.Length; if (count >= startstream) { startstream = count; } } Console.WriteLine("The biggest line -> {0}\n He has {1} symbols", StringLine, startstream); } Console.ReadKey(); } }
|
EveSer
28 авг 2019 17:53
static void Z_1(StreamWriter sw) { for (int i = 0; i <= 500; i++) sw.Write(i + ", "); sw.Close(); } static void Z_2(List<string> QQ,StreamWriter sw) { for (int i=0;i<QQ.Count;i++) sw.WriteLine(QQ[i]); sw.Close(); } static string Z_3(StreamReader sr) { string str = sr.ReadToEnd(); string[] mas = str.Split('\n'); int max = mas[0].Length; string stroka=""; for (int i = 0; i < mas.Length; i++) { if (max <= mas[i].Length) { stroka = mas[i]; max = mas[i].Length; } } sr.Close(); return max-1 + " " + stroka; } static void Main(string[] args) { StreamWriter sw = new StreamWriter(@"D:\numbers.txt"); StreamReader sr = new StreamReader(@"D:\numbers.txt"); Z_1(sw); List<string> mas = new List<string> {"red", "green", "black", "white", "blue" }; Z_2(mas, sw); Console.WriteLine(Z_3(sr)); }
|
Predwesnik
08 июл 2019 16:16
using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.IO; using System.Threading.Tasks;
namespace task_with_files { class Program { static void Main(string[] args) { String case_choise = null; do { Console.WriteLine("\n________________________________________\nВыберите задачу : \nСоздать/очистить файл press \"w\" \nЗаписать числа в ряд press \"1\" \nЗаписать массив в строку press \"2\" \nСамая длинная строка press \"3\" \nВыход press \"q\" "); case_choise = Console.ReadLine();
switch (case_choise) { case "1": task_1(); break; case "2": task_2(); break; case "3": task_3(); break; case "w": clear_task(); break; case "q": default: Console.WriteLine("Ошибка"); break; } } while (case_choise != "q");
}
public static void task_1() { FileStream file_1 = new FileStream("D:\\new_text.txt", FileMode.Append); StreamWriter write_file_1 = new StreamWriter(file_1); int max = 0; bool check = false; do { try { Console.WriteLine("Введите количество чисел :"); max = Convert.ToInt32(Console.ReadLine()); } catch (FormatException) { Console.WriteLine("Ошьбка ввода"); }
for (int i = 1; i < max + 1; i++) { write_file_1.Write(i + ","); check = true; } write_file_1.WriteLine(""); } while (check != true);
Console.WriteLine("Done!" + max); write_file_1.Close(); }
public static void task_2() { FileStream file_1 = new FileStream("D:\\new_text.txt", FileMode.Append); StreamWriter write_file_1 = new StreamWriter(file_1); //Console.WriteLine("Vvedite colich chisel :"); //int max = Convert.ToInt32(Console.ReadLine()); string[] arr = { "red", "green", "black", "white", "blue" }; string test = null; for (int i=0; i < arr.Length; i++) { write_file_1.WriteLine(arr[i]); test = arr[i]; } Console.WriteLine("Done!" + test); write_file_1.Close();
}
public static void task_3() {
string line; string next_line="0"; int ansv = 1; int counter = 1; FileStream file_1 = new FileStream("D:\\new_text.txt", FileMode.Open); StreamReader write_file_1 = new StreamReader(file_1);
while ((line = write_file_1.ReadLine()) != null) { if (line.Length > next_line.Length) { next_line = line; ansv = counter; } counter++; } write_file_1.Close(); Console.WriteLine("Самая большая строка : "+ next_line); Console.WriteLine("Номер строки : "+ansv); } public static void clear_task() { FileStream file_1 = new FileStream("D:\\new_text.txt", FileMode.Create); StreamWriter write_file_1 = new StreamWriter(file_1); write_file_1.Close(); //File.Create("D:\\new_text.txt"); Console.WriteLine("Файл очищен!!!"); } } }
|
Yahor
14 июн 2019 18:39
1. static void Main(string[] args) { StreamWriter write = new StreamWriter("C:\\...\\new_file.txt"); int i = 0; do { write.Write(i++ + ", "); } while (i < 501); }
2. static void Main(string[] args) { StreamWriter write = new StreamWriter("C:\\...\\new_file.txt"); string[] arr_1 = { "red","green","black","white","blue" }; foreach (string el in arr_1) { write.WriteLine(el); }
write.Close();
3. static void Main(string[] args) {
StreamReader read = new StreamReader("C:\\...\\new_file.txt"); string max = read.ReadLine(); while (!read.EndOfStream) { string s = read.ReadLine();
if (max.Length < s.Length) { max = s; } } read.Close(); Console.WriteLine(max.Length);
}
|
maksim270
16 фев 2019 21:54
private static void Main(string[] args) { // 1 StreamWriter writer1 = new StreamWriter("./text1.txt"); writer1.Write(string.Join(",", Enumerable.Range(1, 500))); writer1.Close(); // 2 StreamWriter writer2 = new StreamWriter("./text2.txt"); Array.ForEach(new string[]{"red", "green", "black", "white", "blue"}, s => writer2.WriteLine(s)); writer2.Close(); // 3 int max = 0; StreamReader reader3 = new StreamReader("./text2.txt"); while (!reader3.EndOfStream) { int len = reader3.ReadLine().Length; max = len > max ? len : max; } reader3.Close(); Console.WriteLine("max=" + max); }
|
Avadim
12 окт 2018 01:19
1-е задание:
static void Main(string[] args) { for (int i = 1; i < 501; i++) { FileStream file = new FileStream("D:\\numbers.txt", FileMode.Append, FileAccess.Write); StreamWriter writer = new StreamWriter(file); writer.WriteLine(i); writer.Close(); } }
2-е задание:
static void Main(string[] args) { string[] array = {"red", "green", "black", "white", "blue"}; for (int i = 0; i < array.Length; i++) { FileStream file = new FileStream("D:\\colors.txt", FileMode.Append, FileAccess.Write); StreamWriter writer = new StreamWriter(file); writer.WriteLine(array[i]); writer.Close(); } }
3-е задание:
static void Main(string[] args) { StreamWriter writer = new StreamWriter("D:\\text.txt"); writer.WriteLine("Возьмите"); writer.WriteLine("любой текстовый"); writer.WriteLine("файл,"); writer.WriteLine("и найдите в нем размер самой"); writer.WriteLine("длинной строки."); writer.Close();
StreamReader reader = new StreamReader("D:\\text.txt"); string line = reader.ReadLine(); while (!reader.EndOfStream) { string nextline = reader.ReadLine(); if (line.Length < nextline.Length) { line = nextline; } } reader.Close(); Console.WriteLine("Размер самой длинной строки " + line.Length + " знаков."); Console.ReadKey(); }
|
dwebm@mail.ru
20 сен 2018 21:19
Задача 2
using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; using System.IO;
namespace ConsoleApp13 { class Program { static void Main(string[] args) { FileStream file1 = new FileStream("C:\\Users\\Arxangel\\Desktop\\Блокнот.txt", FileMode.Create); StreamWriter writer = new StreamWriter(file1); string[] arrayStrings = { "red", "green", "black", "white", "blue" }; foreach(string s in arrayStrings) writer.Write(s + "\r\n"); writer.Close(); } } }
|
dwebm@mail.ru
20 сен 2018 21:11
Задача 1 using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; using System.IO;
namespace ConsoleApp13 { class Program { static void Main(string[] args) { int i; StreamWriter writer = new StreamWriter("C:\\Users\\Arxangel\\Desktop\\numbers.txt"); for (i = 0; i < 500; i++) writer.Write(i + "," + " "); for (i = 500; i < 501; i++) writer.Write(i + "." + " "); // в конце ставим точку вместо запятой writer.Close(); } } }
|
Lemon Party
11 июл 2018 18:53
FileStream create = new FileStream("D://colors.txt", FileMode.Create); StreamWriter writ = new StreamWriter(create); string[] array = { "red", "green", "black", "white", "blue" }; for (int c = 0; c < array.Length; c++) { writ.Write(array[c]); writ.Close(); StreamReader read = new StreamReader("D://colors.txt"); Console.WriteLine(read.ReadToEnd()); read.Close(); Console.ReadLine();
|
Lemon Party
11 июл 2018 18:06
static void Main(string[] args) { FileStream file = new FileStream("D:\\ numbers.txt", FileMode.Create); StreamWriter ZAPIS = new StreamWriter(file); for (int a = 1; a <= 100; a++) {
ZAPIS.Write(a+ ','); ZAPIS.Close(); FileStream open = new FileStream("D:\\ numbers.txt", FileMode.Open); StreamReader Read = new StreamReader(open); Console.WriteLine(Read.ReadToEnd()); Read.Close(); Console.ReadKey(); } }
|
Darkest
19 дек 2017 15:44
Мне это в гейм деве пригодиться?
|
sadaction
19 дек 2017 13:55
Nekto 17 дек 2017 12:43 нмв, без if коасивее maxLength = Math.Max (maxLength, i);
|
Nekto
17 дек 2017 12:43
3 задание
static void Main(string[] args) { FileStream str = new FileStream("???",FileMode.Open,FileAccess.Read); StreamReader rdr = new StreamReader(str, Encoding.UTF8); int a = 0; while (!rdr.EndOfStream) { int i = rdr.ReadLine().Length; if (i > a) a = i; else continue; } Console.WriteLine(a); rdr.Close(); Console.ReadKey(); }
|
Shoo
29 сен 2017 21:15
3)
StreamReader reader = new StreamReader(testfile); List<string> list1 = new List<string> { }; while (!reader.EndOfStream) { list1.Add(reader.ReadLine()); } int maxlen = 0; foreach (string str in list1) { if (str.Length > maxlen) { maxlen = str.Length; } } reader.Close(); Console.WriteLine("Самая длинная строка содержит " + maxlen + " символов"); Console.ReadKey();
|
Shoo
29 сен 2017 21:01
2)
string[] array = { "red", "green", "black", "white", "blue" }; StreamWriter writer = new StreamWriter(testfile); foreach (string el in array) { writer.WriteLine(el); } writer.Close();
|
Shoo
29 сен 2017 20:57
1)
StreamWriter writer = new StreamWriter(testfile, append: true); for (int i = 1; i <= 500; i++) { if (i == 500) { writer.Write(i + "."); } else { writer.Write(i + ","); } } writer.Close();
|
Maks
06 сен 2017 14:41
class MainClass { static string result; static int Length_ = 0; static string String(string pach) { int count = System.IO.File.ReadAllLines(pach).Length; StreamReader readr = new StreamReader(pach,UnicodeEncoding.UTF8); for (int i = 0; i < count; i++) { string str = readr.ReadLine(); if (str.Length > Length_) { result = str; Length_ = result.Length; } } readr.Close(); return result; }
public static void Main(string[] args) { Console.Write("Введите имья файла :"); string pach = Console.ReadLine(); Console.WriteLine(String(pach)); Console.ReadKey();
}
|
lax33
24 мар 2017 14:17
// Задача 1.Создайте файл numbers.txt и запишите в него натуральные числа от 1 до 500 через запятую.
File.Delete("e:\\numbers.txt"); FileStream numbers = new FileStream("e:\\numbers.txt", FileMode.CreateNew, FileAccess.Write); StreamWriter numberW = new StreamWriter(numbers); for (int i = 1; 500 >= i; i++) { numberW.Write("{0}, ", i); } numberW.Close();
FileStream numbers1 = new FileStream("e:\\numbers.txt", FileMode.Open, FileAccess.Read); StreamReader numberR = new StreamReader(numbers1); Console.WriteLine(numberR.ReadToEnd()); numberR.Close();
Console.ReadKey();
// Задача 2.Дан массив строк: "red", "green", "black", "white", "blue". // Запишите в файл элементы массива построчно(каждый элемент в новой строке).
string[] massiv = new string[5] { "red", "green", "black", "white", "blue" };
File.Delete("e:\\massiv.txt"); FileStream massivstreamW = new FileStream("e:\\massiv.txt", FileMode.CreateNew, FileAccess.Write); StreamWriter write = new StreamWriter(massivstreamW); //int size = massiv.Length; for (int i = 1; massiv.Length > i; i++) { write.WriteLine(massiv[i]); } write.Close();
FileStream massivstrimR = new FileStream("e:\\massiv.txt", FileMode.Open, FileAccess.Read); StreamReader read = new StreamReader(massivstrimR); Console.WriteLine(read.ReadToEnd());
read.Close();
Console.ReadKey();
//Задача 3.Возьмите любой текстовый файл, и найдите в нем размер самой длинной строки.
StreamReader readR = new StreamReader("e:\\novy.txt"); // в переменной сохраняется максимальная длина строки int num = 0; // номер строки с макксимальной длиной
int numStingMax = 0; // текущее значение длины строки
int numSting1 = 0; do { int num1 = readR.ReadLine().Length; numSting1 = numSting1 + 1; if (num < num1) { num = num1; numStingMax = numSting1; } } while (!(readR.EndOfStream));
Console.WriteLine("Размер самой длинной строки - {0}", num); Console.WriteLine("Номер строки - {0}", numStingMax);
Console.ReadKey();
|
Игорь
25 янв 2017 22:31
Это не работает: StreamReader wow = new StreamReader("D:\\nuka.txt"); int l = 0; for (string s = wow.ReadLine(); wow.EndOfStream != true;) { if (l < s.Length) { l = s.Length; } } wow.Close(); Console.WriteLine(l); Console.ReadKey(); Это работает: StreamReader wow = new StreamReader("D:\\nuka.txt"); int l = 0; while (wow.EndOfStream != true) { string s = wow.ReadLine(); if (l < s.Length) l = s.Length; } wow.Close(); Console.WriteLine(l); Console.ReadKey();
Никак не могу понять, в чем разница. Потому что я в условиях цикла for прописал s? И она считывается лишь однажды?
|
mihpir889
07 янв 2017 19:12
Задача 1 StreamWriter writer = new StreamWriter("D:\\text.txt"); for (int i = 1; i < 501; i++) { writer.Write(i + ", "); } writer.Close();
Задача 2
string[] num = {"red", "green", "black", "white", "blue"}; StreamWriter writer = new StreamWriter("D:\\text1.txt"); foreach (string el in num) { writer.WriteLine(el); } writer.Close();
Задача 3 StreamReader reader = new StreamReader("D:\\text3.txt"); int i = 0; while (reader.EndOfStream == false) { int num = reader.ReadLine().Length; if (num > i) i = num; } Console.WriteLine(i); reader.Close(); Console.ReadKey();
|
Вадим
01 ноя 2016 12:52
Как взять значеныэ для переменной из файла
|
Vita12345
21 окт 2016 16:13
А вот моё, посмотрите плиз на решение. StreamWriter и StreamReader я обвернула в using, т.к это disposable объекты
// Задача 1. using (StreamWriter writer = new StreamWriter(@"C:\Users\Vitalina\Desktop\numbers.txt")) { int[] arrays = new int[501]; for (int i = 0; i < 501; i++) { arrays[i] = i; writer.Write(arrays[i] + " "); }
//Задача 2.
string[] colours = new[] { "red", "green", "black", "white", "blue" };
using (StreamWriter writerColours = new StreamWriter(@"C:\Users\Vitalina\Desktop\colours.txt")) { for (int i = 0; i < colours.Length; i++) { writerColours.WriteLine(colours[i]); } }
//Задача 3
using (StreamReader reader = new StreamReader(@"C:\Users\Vitalina\Desktop\colours.txt")) { string[] allLinesText = File.ReadAllLines(@"C:\Users\Vitalina\Desktop\colours.txt", Encoding.Default); string maxLengthLine = allLinesText.OrderByDescending(d => d.Length).ToArray()[0]; Console.WriteLine(maxLengthLine); }
|
Влад
03 окт 2016 14:13
static void Main(string[] args) { StreamReader WWW = new StreamReader("D:\\prog\\readme.txt"); int i = 0; while (WWW.EndOfStream == false) { int num = WWW.ReadLine().Length; if (num > i) i = num; } Console.WriteLine("Самая длинная строка содержит " + i + " символа"); WWW.Close(); Console.ReadKey(); }
|
Юрец
02 окт 2016 19:11
namespace FileWork { class Program { //функция создания указанного имени txt файла и введения указанного количества натуральных чисел static void AdText (string addText, int kol) { StreamWriter record = new StreamWriter(addText); for (int i = 1; i <= kol; i++) { record.WriteLine(i); } record.Close(); }
//переводим строку в массив static void ArrayToTxt(string[] mass, string nameFile) {
StreamWriter recordColors = new StreamWriter(nameFile); for(int i = 0; i < mass.Length; i++) { recordColors.WriteLine(mass[i]); } recordColors.Close(); }
//находим максимальную длину строки в файле static void dlinaFile (string file) { StreamReader dlina = new StreamReader(file);//открываем поток string firstString, secondString, maxString; firstString = dlina.ReadLine();// считываем первую строку и записываем в переменную firstString
do { secondString = dlina.ReadLine();//считываем первую строку и записываем в переменную secondString if (firstString.Length > secondString.Length)// сравниваем длину двух переменных и максимальную записываем в перменную maxString maxString = firstString; else maxString = secondString; } while (!dlina.EndOfStream);// выполняем цикл пока не достигнем конца файла dlina.Close();// закрываем поток
Console.WriteLine("Максимальная длина строки равна {0}", maxString.Length);
}
static void Main(string[] args) { Console.WriteLine("Введите название текстового файла"); string name = Console.ReadLine();
//добавляем txt расширение name = name + ".txt";
//указываем сколько натуральных чисел нужно записать в файл Console.WriteLine("Сколько натуральных числе записать в файл ?"); int chisla = Int32.Parse(Console.ReadLine());
AdText(name, chisla);
//записываем массив в файл Console.WriteLine("Введите название файла");
string colStr = Console.ReadLine(); colStr = colStr + ".txt";
Console.WriteLine("Введите какие данных хотите записать в файл"); string data = Console.ReadLine();
//заполняем массив, разбивая фразу на элементы string[] colors = data.Split(' ');
//записываем данные в файл ArrayToTxt(colors, colStr);
Console.WriteLine("Какой файл считать ?"); string readFile = Console.ReadLine(); readFile = readFile + ".txt";
dlinaFile(readFile);// выводим длину максимальной строки
Console.ReadKey(); } } }
|
silentium.noxe
13 сен 2016 16:24
using System; using System.IO;
namespace Working_with_Files { class FirstClass { static void Main(string[] args) { //Создаём переменные string nul = null;
//Создаём файловый поток FileStream file1 = new FileStream("D:\\test.txt", FileMode.Create); //Создаём потоковый писатель StreamWriter writer = new StreamWriter(file1);
//Создаём массив int[] array = new int[500]; string[] colors = { "red", "green", "black", "white", "blue" };
//Заполняем массив colors for (int f = 0; f < colors.Length; f++) { nul = colors[f]; writer.WriteLine(nul);//пишем
}
//Заполняем массив array for (int i = 0; i < array.Length; i++) { array[i] = i; writer.Write(array[i]+" ");//пишем }
writer.Close();//завершаем поток
GetValue();//выводим метод в MAIN
Console.ReadKey();//останавливаем консоль
}
public static void GetValue() { //Создаём переменные string TextLIne; int num = 0;
//Открываем файл для чтения FileStream file1 = new FileStream("D:\\test.txt", FileMode.Open, FileAccess.Read); //Создаём потоковый читатель StreamReader reader = new StreamReader(file1);
//Считываем данные строк while (!reader.EndOfStream)//считывание всех строк(без "!" не работает) { TextLIne = reader.ReadLine(); if (TextLIne.Length > num) num = TextLIne.Length;//если TextLine больше num тогда num приобретает значение TextLine } //Вывод Console.WriteLine("Самая длинная строка в файле, содержит " + num + " символов.");
reader.Close();//завершение потока }
} }
|
Heso
25 авг 2016 08:38
static void Main(string[] args) { string[] colors = new string[5] {"red", "green", "black", "white", "blue"}; string a = null; for (int i = 0; i < colors.Length; i++) { FileStream file = new FileStream("D:\\file.docx", FileMode.Append); StreamWriter col = new StreamWriter(file); a = colors[i]; col.WriteLine(a); col.Close(); } }
|
Heso
24 авг 2016 10:45
using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.IO;
namespace ConsoleApplication5 { class Program { static void Main(string[] args) { for (int i = 1; i <= 500; i++) { FileStream numbers = new FileStream("D:\\numbers.txt", FileMode.Append); StreamWriter num = new StreamWriter(numbers); if (i != 500) { num.Write(i + ", "); num.Close(); } else { num.Write(i); num.Close(); } } }
} }
|
FierCer
20 авг 2016 17:00
Задача 1 Решил по-извращаться, решил рекурсией =)
public static string writeText(int number) { if (number > 1) { return (writeText(number - 1) + "," + number); } else { return (Convert.ToString(number)); } }
static void Main(string[] args) { int num=500; FileStream numbers = new FileStream("D:\\numbers.txt", FileMode.Append, FileAccess.Write); StreamWriter text = new StreamWriter(numbers); text.Write(writeText(num)); text.Close(); }
Задача 2
static void Main(string[] args) { string[] mass = { "red", "green", "black", "white", "blue" }; FileStream colors = new FileStream("D:\\colors.txt", FileMode.Append, FileAccess.Write); StreamWriter text = new StreamWriter(colors); foreach (string i in mass) { text.WriteLine(i); } text.Close(); }
Задача 3
static void Main(string[] args) { string textLine; int num = 0; FileStream colors = new FileStream("D:\\eula.1028.txt", FileMode.Open, FileAccess.Read); StreamReader text = new StreamReader(colors); while( !text.EndOfStream ) { textLine = text.ReadLine(); if ( textLine.Length > num ) num = textLine.Length; } Console.WriteLine("Самая длинная строка в файле, содержит " + num + " символов."); Console.ReadKey(); }
|
KiraVergil
08 авг 2016 15:06
public static void Main(string[] args) { FileStream file = new FileStream("D:\\test.txt", FileMode.Create); StreamWriter writer = new StreamWriter(file); string[] text = {"red", "green", "black", "white", "blue"}; string res_text = null; for (int i = 0; i < 5; i++) { res_text = text[i]; writer.WriteLine(res_text); } writer.Close(); }
|
KiraVergil
08 авг 2016 15:02
class Program { public static void Main(string[] args) { FileStream file = new FileStream("D:\\test.txt", FileMode.Create); StreamWriter writer = new StreamWriter(file); string text = null; for(int i = 1; i <= 500; i++) { if (i != 500) { text = text + i + ", "; } else { text = text + i; } } writer.Write(text); writer.Close();
}
|
Дмитро
04 авг 2016 11:28
Завданя 1;
StreamWriter writer = new StreamWriter("d:\\numbers.txt"); for (int i=0;i<500;i++) { int n=i+1; writer.Write(n + ","); } writer.Close()
|
GrayHerzog
17 июн 2016 13:13
static void Main(string[] args) { List<string> strings = new List<string>(); FileStream file = new FileStream("f:\\test.txt", FileMode.Open, FileAccess.Read); StreamReader reader = new StreamReader(file);
while (reader.EndOfStream != true) { strings.Add(reader.ReadLine()); } reader.Close(); MaxOutOfArray(strings); } public static void MaxOutOfArray(List<string> strings) { int max = strings[0].Length; for (int i = 0; i < strings.Count; i++) { if (strings[i].Length > max) { max = strings[i].Length; } } Console.WriteLine(max); }
|
Devo4ka
16 июн 2016 11:33
string max=""; FileStream text = new FileStream ("/Users/Mart/Desktop/file2.txt", FileMode.OpenOrCreate); StreamReader read = new StreamReader (text);
string[] array = read.ReadToEnd().Split(new char[] {' ',','}); for(int i=0; i<array.Length;i++) if (array [i].Length > max.Length) max = array [i]; Console.Write ("max stroke = " + max);
|
Devo4ka
16 июн 2016 11:06
string max=""; string[] array = File.ReadAllText("/Users/Mart/Desktop/file2.txt").Split (new char[] { ' ', ',' }); foreach(string s in array){ if (s.Length > max.Length) max = s; } Console.WriteLine ("Максимальная строка = " + max);
|
Devo4ka
13 июн 2016 13:16
FileStream numbers = new FileStream("/Users/Mart/Desktop/numbers2.txt", FileMode.OpenOrCreate); StreamWriter write = new StreamWriter (numbers); string[] array = { "red", "green", "black", "white", "blue" }; for (int i=0; i<array.Length;i++){ write.WriteLine(array[i]); } write.Close ();
|
Devo4ka
13 июн 2016 13:11
FileStream numbers = new FileStream("/Users/Mart/Desktop/numbers.txt", FileMode.OpenOrCreate); StreamWriter write = new StreamWriter (numbers); for (int i=0; i<500;i++){ int n = i+1; write.Write(n+","); } write.Close ();
|
Максим
22 май 2016 04:33
Что делать, если появляется System.UnauthorizedAccessExeption: Отказано в доступе по пути "D:\"?
static void Main(string[] args) { int[] array = new int[500]; for (int i = 0;i<array.Length;i++) { array[i] = i + 1; } FileStream file = new FileStream(@"D:\", FileMode.OpenOrCreate, FileAccess.ReadWrite); StreamReader reader = new StreamReader(file); StreamWriter writer = new StreamWriter(file); for (int i = 0; i < array.Length; i++) { writer.Write(array[i]); } writer.Close(); reader.Close(); file.Close(); Console.ReadKey(); }
|
Александр Михалев
25 апр 2016 17:21
задание 1. File.Create("C:\\My documets\\Visual Studio 2013\\Projects\\LearningProject\\Quest1"); // создание файла StreamWriter writer = new StreamWriter("C:\\My documets\\Visual Studio 2013\\Projects\\LearningProject\\Quest1"); // метод для записи for(int i = 1; i <= 500; i++) { writer.WriteLine(i); // цикл для вывода чисел от 1 до 500 } writer.Close(); // закрытие потока
задание 2. string[] arr = new string[] { "red", "green", "black", "white", "blue" }; File.Create("C:\\My documets\\Visual Studio 2013\\Projects\\LearningProject\\Quest2"); // создание файла StreamWriter writer = new StreamWriter("C:\\My documets\\Visual Studio 2013\\Projects\\LearningProject\\Quest2"); for(int i = 0; i < arr.Length; i++) { writer.WriteLine(arr[i]); } writer.Close();
|
Vlad
06 мар 2016 23:22
Третье задание.
using System.Linq; using System.Text; using System.IO; namespace Работа_с_файлами { class Program { static void Main(string[] args) { FileStream file1 = new FileStream("d:\\test.txt", FileMode.Create); string[] arr = { "red", "green", "blue", "yellow" }; string[] array = { "black", "white", "pink", "hacky" }; StreamWriter writer = new StreamWriter(file1); try { for (int i = 0; i < arr.Length; i++) { writer.Write(arr[i]); writer.Write("\n"); writer.Write(array[i]); writer.Write("\n"); writer.WriteLine(String.Compare(arr[i], array[i])); if (arr.Length > array.Length) { writer.Write("Bigger string is "+arr[i]+"\n"); } else { writer.Write("Bigger string is "+array[i]+"\n"); }
} } catch(IndexOutOfRangeException) { Console.WriteLine("Wrong input"); } writer.Close(); } } }
|
Vlad
05 мар 2016 22:46
Помогите, никто не знает как, используя исключения после ошибки продолжить ввод.
using System; using System.Collections.Generic; using System.Linq; using System.Text;
namespace try_catch { class Program { static void Main(string[] args) { int num1, num2, sum, c = 0; int[] arr = {0, 67, 89,23,78,9,890, 56, 9, 89 }; string result = ""; do { sum = 0;
try { Console.Write("Введите первое число: "); num1 = Int32.Parse(Console.ReadLine()); Console.WriteLine("Вы ввели number " + arr[num1 - 1]); Console.Write("Введите второе число: "); num2 = Int32.Parse(Console.ReadLine()); Console.WriteLine("Вы ввели number " + arr[num2 - 1]); sum = arr[num1 - 1] + arr[num2 - 1]; Console.WriteLine("Сума элементов " + sum); Console.WriteLine("Если вы хотите выйти нажмите клавишу <1>"); c = Int32.Parse(Console.ReadLine()); if (c == '1') { break; } else continue; } catch (FormatException) { result = "Ввод не удался. Повторите попытку(введите число)"; continue; }
catch (IndexOutOfRangeException) { result = "Введите числo от 1 до 10"; continue; }
} while (c == '1'); Console.WriteLine(result); Console.ReadKey();
} } }
|
Юрий
03 мар 2016 17:43
Задание №3.
static void Main(string[] args) { string text = ""; int i=0, a = 0, max=0, ii=0; FileStream file1 = new FileStream("F:\\The story of the spring.txt", FileMode.Open);//Создаем файловый поток (аргумент1-существующий файл-The story of the spring.txt, аргумент2-режим открытия FileMode.Open - открытие файла) StreamReader reader = new StreamReader(file1, System.Text.Encoding.Default);//создаем «потоковый читатель» и связываем его с файловым потоком (файлом The story of the spring.txt) text = reader.ReadToEnd();//считываем файл F:\\The story of the spring.txt в переменную text string[] array = text.Split('.');//Cоздаем массив строк из текста F:\\The story of the spring.txt. Символ, по которому будет разбит техт - точка(т.к. точка является концом строки). for (i=1; i<array.Length-1; i++) { a = array[i].Length; Console.WriteLine("["+i+"]"+array[i]+". "+"("+a+" символов в строке)"); if (max < a) { max = a; ii = i; } if (i ==array.Length-2) { Console.WriteLine("\r"); Console.WriteLine("Самая длинная строка [" +ii+"] "+max+" символов."); } } Console.ReadKey(); }
|
Юрий
03 мар 2016 17:35
static void Main(string[] args) { string text = ""; int i=0, a = 0, max=0, ii=0; FileStream file1 = new FileStream("F:\\The story of the spring.txt", FileMode.Open);//Создаем файловый поток (аргумент1-существующий файл-The story of the spring.txt, аргумент2-режим открытия FileMode.Open - открытие файла) StreamReader reader = new StreamReader(file1, System.Text.Encoding.Default);//создаем «потоковый читатель» и связываем его с файловым потоком (файлом The story of the spring.txt) text = reader.ReadToEnd();//считываем файл F:\\The story of the spring.txt в переменную text string[] array = text.Split('.');//Cоздаем массив строк из текста F:\\The story of the spring.txt. Символ, по которому будет разбит текст - точка(т.к. точка является концом строки). for (i=1; i<array.Length-1; i++) { a = array[i].Length; Console.WriteLine("["+i+"]"+array[i]+". "+"("+a+" символов в строке)"); if (max < a) { max = a; ii = i; } if (i ==array.Length-2) { Console.WriteLine("\r"); Console.WriteLine("Самая длинная строка [" +ii+"] "+max+" символов."); } } Console.ReadKey(); } }
|
dmitry_zon
12 фев 2016 12:42
class Program { public static void NumsWriter(int counter) { FileStream CreateRowNums = new FileStream("D:\\Lesson11_Text.txt", FileMode.OpenOrCreate, FileAccess.Write); StreamWriter NumsWriter = new StreamWriter(CreateRowNums); for (int i = 1; i != counter+1; i++) { NumsWriter.WriteLine(i + ", "); } NumsWriter.Close(); } static void ColorsWriter (string[] array) { FileStream CreateColors = new FileStream("D:\\Lesson11_Colors.txt", FileMode.OpenOrCreate, FileAccess.Write); StreamWriter ColsWriter = new StreamWriter(CreateColors); foreach (string Col in array) { ColsWriter.WriteLine(Col); } ColsWriter.Close(); } static void Main(string[] args) { Console.Write("Please enter a quantity of numbers to write to the file: "); int counter = Convert.ToInt32(Console.ReadLine()); string[] Colors = { "red", "green", "black", "white", "blue" }; NumsWriter(counter); ColorsWriter(Colors); FileStream StringLength = new FileStream("D:\\Lesson11_StringLength.txt", FileMode.Open, FileAccess.Read); StreamReader CalcStringLength = new StreamReader(StringLength, Encoding.Default); string SingleString; int LongestString = 1; while (!CalcStringLength.EndOfStream) { SingleString = CalcStringLength.ReadLine(); Console.WriteLine(SingleString + " is " + SingleString.Length + " charcters"); if (SingleString.Length > LongestString) { LongestString = SingleString.Length; } } Console.WriteLine("Longest string contains " + LongestString + " characters"); Console.ReadKey(); } }
|
dmitry_zon
10 фев 2016 14:49
К первому заданию. Ваще не понял в чем смысл использования методов File., если при попытке записать данные в только что созданный программой файл возникает исключение, сообщающее о том, что файл используется другим процессом.
В итоге решил через поток:
class Program { static void Main(string[] args) { FileStream CreateRowNums = new FileStream("D:\\Lesson11Text.txt", FileMode.OpenOrCreate, FileAccess.Write); StreamWriter NumsWriter = new StreamWriter(CreateRowNums); for (int i = 1; i < 501; i++) { NumsWriter.Write(i + ", "); } NumsWriter.Close(); } }
|
Степан
05 фев 2016 19:26
Alex, ты не закрыл оператор и он прервался - я так полагаю переполнился какой-то буфер и записалось то, что уместилось. Я добавил в твой код после } в цикле 'for' wr.Close(); и он дошел до 499. Чтобы получилось 500, удлинил массив до 502, правда так и не понял, почему не хватило 501 А вообще весьма сомнительная мысль делать это через массив, имхо, ибо больше возни гораздо.
|
Alexander
04 фев 2016 11:03
Объясните, пожалуйста, почему такая программа (к задаче 1) создает файл, в котором записываются числа от 1 до, почему-то, 431 class Program { public static void Main(string[] args) { int [] nums = new int[501]; for (int i=1; i<nums.Length-1; i++) { nums[1]=1; nums[i+1]=nums[i]+1; } FileStream fh = new FileStream("E:\\numbers.txt", FileMode.Create, FileAccess.Write); StreamWriter wr = new StreamWriter(fh); for (int i=1; i<nums.Length-1; i++) { wr.Write(nums[i]+", "); } Console.ReadKey(true); } }
|
Игорь
22 янв 2016 07:49
FileStream file= new FileStream("D:\\123.txt", FileMode.Open); StreamReader reader= new StreamReader(file); string a="asc"; do { string s=reader.ReadLine(); if (s.Length>a.Length) { a=s; } } while (!reader.EndOfStream); int razmer = a.Length; Console.WriteLine("Razmer samoy dlinnoy stroki v faile =" + " " + razmer);
|
Игорь
21 янв 2016 14:21
FileStream file = new FileStream("D:\\massiv.txt", FileMode.Create); StreamWriter writer = new StreamWriter(file); string[]massiv={"sergey","alexey","valera","georguy","nikolay","igor","evgenuy"}; for (int i = 0; i < massiv.Length; i++) { writer.Write(massiv[i]+"\r\n"); } writer.Close();
|
neronovs
04 янв 2016 06:52
так как для выполнения 3-х задач использую 1 проект, то в коде, некоторые переменные не объявляю, а использую старый, просто обнуляя их.
|
neronovs
04 янв 2016 06:49
Задача №2
spool = ""; string[] array = new string[]{ "red", "green", "black", "white", "blue" }; StreamWriter file2 = new StreamWriter("d:\\temp\\array.txt"); for (int i = 0; i < array.Length; i++) { file2.WriteLine(array[i]); } file2.Close();
|
neronovs
04 янв 2016 06:29
1 задача
static void Main(string[] args) { string spool = ""; StreamWriter file = new StreamWriter("d:\\temp\\numbers.txt"); for (int i = 1; i < 501; i++) { spool += i + (i != 500 ? ", " : ""); } file.WriteLine(spool); file.Close(); }
|
DOK
07 дек 2015 21:22
Спасибо автарам статья хорошая прямо сейчас прохожу все главы по порядку.
|
Heinkel
10 ноя 2015 13:53
Немного переделал первое задание: убрал в конце запятую и запись в файл реализовал через stream:
static void Main(string[] args) { StreamWriter file = new StreamWriter("C:\\temp\\numbers.txt"); int sum; string Numbers =""; for (int i = 1; i < 501; i++) {
Numbers += string.Join("", i, ", "); } sum = (Numbers.Length - 2); file.Write(Numbers.Remove(sum)); file.Close(); }
|
Heinkel
10 ноя 2015 13:01
Первое задание:
static void Main(string[] args) { string numbers = ""; for (int i = 1;i < 501 ;i++) { numbers += string.Join("", i, ", "); }
File.WriteAllText("C:\\temp\\numbers.txt", numbers); }
Создается файл, в котором числа прописаны через запятую. Без пробелов
|
Kanashkin.ilya
10 ноя 2015 11:25
ДЗ_11.2
namespace ДЗ_11.2 { class Program { static void Main(string[] args) { string[] array = {"red", "green", "black", "white", "blue"}; FileStream Mass = new FileStream("C:\\Users\\KanashkinIV\\Desktop\\Mass.txt", FileMode.Create); StreamWriter writer = new StreamWriter(Mass); foreach (string color in array) { writer.WriteLine(color); } writer.Close(); } } }
|
Anton
26 окт 2015 23:40
using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.IO;
namespace test5 { class Program { static void Main(string[] args) { string[] array = {"red", "green", "black","white","blue"}; for (int i = 0; i < 5; i++ ) Console.Write(" " + array[i]);
FileStream file = new FileStream("d:\\test2.txt", FileMode.Create); StreamWriter writer = new StreamWriter(file); for (int i = 0; i < 5; i++) writer.WriteLine(array[i]); writer.Close(); } } }
|
Золтан
26 окт 2015 10:34
Правильно будет такое решение?
using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.IO;
class Program { public static void Main(string[] args) { string res = ""; FileStream file1 = new FileStream("E:\\numbers.txt", FileMode.Create); //создаем файловый поток StreamWriter writer = new StreamWriter(file1); //создаем «потоковый писатель» и связываем его с файловым потоком for ( int i = 1; i <=500; i++) { res = Convert.ToString(i); if ( i <500) res += ", "; writer.Write(res); } //записываем в файл writer.Close(); //закрываем поток. Не закрыв поток, в файл ничего не запишется } }
|
Anton
25 окт 2015 23:11
Почему если изменить путь файла с диска *D*,как в примере на *другой* , то появляется ошибка !?
|
vladislav
20 окт 2015 15:47
string[] mass_word = { "red", "green", "black", "white", "blue" }; FileStream exercise2 = new FileStream(@"c:\C#\ex2.txt",FileMode.OpenOrCreate); StreamWriter writer = new StreamWriter(exercise2); foreach (string word in mass_word) { writer.WriteLine(word); } writer.Close();
|
vladislav
18 окт 2015 14:49
Необработанное исключение типа "System.ArgumentException" в mscorlib.dll
Дополнительные сведения: Требуется информация об абсолютном пути.
Люди, помогите, что это значит? Ни одна программа из урока не работает.
|
Сергей
25 авг 2015 13:00
// Задание 3 // //Возьмите любой текстовый файл, и найдите в нем //размер самой длинной строки.
// А если самых длинных строк несколько? //Почему-то такой вариант никто не учел...
StreamReader reader = new StreamReader(@"c:\colors.txt"); List<string> maxlength = new List<string>(); int j = 0; // счетчик символов в строке int k = 1; // счетчик самых длинных строк do { s = reader.ReadLine(); if (s.Length > j) // если длиннее предыдущей, очищаем список и записываем эту строку { maxlength.Clear(); k = 1; maxlength.Add(s); j = s.Length; } else if (s.Length == j) // если такая же по длине, добавляем ее в список { maxlength.Add(s); k++; } } while (!reader.EndOfStream);
Console.WriteLine("Нашлось самых длинных строк: {0}, с количеством символов: {1}. \n Результат:", k, j); foreach (string item in maxlength) Console.WriteLine(item); Console.ReadKey();
|
ROOT
08 авг 2015 19:06
\\Домашнее задание\\
using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.IO; using System.Threading.Tasks;
namespace ConsoleApplication25 { class Program { static void Main(string[] args) { Console.WriteLine("Homework №1"); //Создайте файл numbers.txt и запишите в него натуральные числа от 1 до 500 через запятую. string file = "D:\\file1.txt"; StreamWriter writer = new StreamWriter(file); for (int i = 0; i <= 500; i ++) { writer.Write(i + ", "); } writer.Close(); StreamReader reader = new StreamReader(file); Console.WriteLine(reader.ReadToEnd()); reader.Close(); Console.ReadKey(); Console.WriteLine("\nНажмите любую клавишу, чтобы продолжить..."); Console.ReadKey(); Console.Clear(); Console.WriteLine("Homework №2"); //Дан массив строк: "red", "green", "black", "white", "blue". Запишите в файл элементы массива построчно (каждый элемент в новой строке). string[] array = { "red", "green", "black", "white", "blue" }; string file2 = "D:\\newfile.txt"; StreamWriter writer2 = new StreamWriter(file2); foreach (string i in array) { writer2.WriteLine(i); } writer2.Close(); StreamReader reader2 = new StreamReader(file2); Console.WriteLine(reader2.ReadToEnd()); reader2.Close(); Console.WriteLine("\nНажмите любую клавишу, чтобы продолжить..."); Console.ReadKey(); Console.Clear(); Console.WriteLine("Homework №3"); //Возьмите любой текстовый файл, и найдите в нем размер самой длинной строки. FileStream file3 = new FileStream("D:\\text.txt", FileMode.Create); StreamReader reader3 = new StreamReader(file3); string line; int n = 0; while (!(reader3.EndOfStream)) { line = reader3.ReadLine(); if (line.Length > n) n = line.Length; }
reader3.Close(); Console.WriteLine("Длина наибольшей строки: " + n); Console.ReadLine(); } } }
|
Anatoliy
03 авг 2015 18:58
Извените за флуд, но почему считывает лишь половину записаного?
using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; using System.IO;
namespace ConsoleApplication1 { class Program { static void Main(string[] args) { Directory.CreateDirectory("d:\\TOLA\\FOLDER"); FileStream file1 = new FileStream("d:\\TOLA\\FOLDER\\file1.txt", FileMode.OpenOrCreate, FileAccess.ReadWrite); StreamWriter writer = new StreamWriter(file1); for(int i=1;i<=500;i++){ writer.Write(i+","); }; StreamReader reader = new StreamReader(file1); Console.WriteLine(reader.ReadToEnd()); writer.Close(); reader.Close(); Console.ReadKey(); } } }
|
Anatoliy
03 авг 2015 18:37
Что надо изменить, чтоб сделать чтоб файл перезаписывался и считывался? Чтоб считывался надо поменять Create на Open, но если файла несуществует, ошибка. Я пробывал сделать перед ними файл путем File.Create(); но мне выкидывает ошибку, помогите пожалуйста, код ниже....
|
Anatoliy
03 авг 2015 18:19
Непонимаю, почему запись работает, а считывание нет.....
using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; using System.IO; using System.Text;
namespace ConsoleApplication1 { class Program { static void Main(string[] args) { Directory.CreateDirectory("d:\\TOLA\\FOLDER"); FileStream file1 = new FileStream("d:\\TOLA\\FOLDER\\file1.txt", FileMode.Create, FileAccess.ReadWrite); StreamWriter writer = new StreamWriter(file1); for(int i=1;i<=500;i++){ writer.Write(i+","); }; StreamReader reader = new StreamReader(file1); Console.WriteLine(reader.ReadToEnd()); Console.WriteLine(reader.EndOfStream); writer.Close(); reader.Close(); Console.ReadKey(); } } }
|
xCooLLer
28 июл 2015 10:47
MichGar
Спасибо! теперь все отображается:)
|
MichGar
27 июл 2015 16:09
Переделал задание №3. Теперь считает правильно.
/* Возьмите любой текстовый файл, и найдите в нем размер самой длинной строки. */
using System; using System.IO; using System.Text;
namespace StringLength { class Program { static void Main() { FileStream fs = new FileStream("D:\\VisualStudio2013\\StringLength\\stringLength.txt", FileMode.Open); StreamReader sr = new StreamReader(fs, Encoding.Default);
string s = sr.ReadLine();
while (!sr.EndOfStream) { string max = sr.ReadLine(); if (s.Length < max.Length) s = max; }
sr.Close();
Console.WriteLine("Самая длинная строка:\n\"{0}\". \nОна имеет {1} символов.", s, s.Length); } } }
|
MichGar
27 июл 2015 13:08
xCooLLer --------
Попробуйте указать кодировку StreamReader sr = new StreamReader(fs, Encoding.Default);
у меня получилось.
|
xCooLLer
27 июл 2015 09:38
Здравствуйте! Такой вопрос. Текстовый файл содержит кириллицу, и , когда считываю файл вместо символов кириллицы вопросительные знаки "??????" Как их отобразить?
|
MichGar
26 июл 2015 00:53
/* Создайте файл numbers.txt и запишите в него натуральные числа от 1 до 500 через запятую. */
using System.IO;
namespace NumbersTxt { class Program { static void Main() { FileStream numberTxt = new FileStream("D:\\1\\number.txt", FileMode.Create); StreamWriter writer = new StreamWriter(numberTxt);
string text = ""; for (int i = 1; i <= 500; i++) { text += i; if (i < 500) text += ", "; } writer.Write(text); writer.Close(); } } }
/* Дан массив строк: "red", "green", "black", "white", "blue". Запишите в файл элементы массива построчно (каждый элемент в новой строке). */
using System.IO;
namespace ArrayTxt { class Program { static void Main(string[] args) { StreamWriter sw = new StreamWriter("D:\\1\\array.txt");
string[] s = { "red", "green", "black", "white", "blue" }; for (int i=0; i<s.Length; i++) sw.WriteLine(s[i]); sw.Close(); } } }
/* Возьмите любой текстовый файл, и найдите в нем размер самой длинной строки. */
using System; using System.IO; using System.Text;
namespace StringLength { class Program { static void Main() { FileStream fs = new FileStream("D:\\1\\stringLength.txt", FileMode.Open); StreamReader sr = new StreamReader(fs, Encoding.Default);
string s = ""; int count = 0;
while (!sr.EndOfStream) { s = sr.ReadLine(); if (s != null && s.Length > count) count = s.Length; }
sr.Close();
Console.WriteLine("Самая длинная строка:\n\"{0}\". \nОна имеет {1} символов.", s, count); } } }
|
Максим
02 июл 2015 21:11
AlexKan --- Это следствие немного непонятного (как минимум для меня) режима OpenOrCreate, если поменять его на Create будет работать как нужно. Если же использовать OpenOrCreate, то нужно установить новую длину файла после записи:
write.Write(str); file.SetLength(file.Position);
|
AlexKan
02 июл 2015 18:24
Максим --- Спасибо за ответы. С 1м и 3м все ясно, а вот со вторым что то не очень... Вы говорите, данные пишутся (об этом говорит строка - write.Write(str);), но на самом деле файл остается пустой - открываю, проверяю. Может проблема с VS 2013? Загадка...
|
Максим
01 июл 2015 10:15
AlexKan --- 1. Класс File обычно используется для простых операций типа копирования, перемещения, переименования, создания, удаления. Когда нужно записывать или считывать данные удобнее использовать потоки. 2. В первом варианте данные таки записываются в файл. Там сначала формируется окончательная строка, и в конце записывается:
write.Write(str);
3. Чтобы открыть файл используйте:
Process.Start(fileName)
|
AlexKan
28 июн 2015 13:45
Максим --- Добрый день! 1. У меня вопрос по теории: если ли какая-нибудь существенная разница между созданием файла (и другими операциями над ним) методом и созданием потоком? Чем оперировать лучше и практичнее? 2. Вопрос по практике: В комментариях нашел 2 варианта 1й задачи 1й: FileStream file = new FileStream("e:\\numbers.txt",FileMode.OpenOrCreate); StreamWriter write = new StreamWriter(file); string str=null; for (int i = 1; i < 501; i++) { str += i; if (i < 500) str += ", "; } Console.Write(str); Console.ReadLine(); write.Write(str); write.Close();
2й:
StreamWriter writr = new StreamWriter("C:\\numbers.txt"); for (int i = 1; i < 501; i++) { writr.Write(i+", "); } writr.Close();
Так вот в 1м варианте данные непосредственно в файл не записываются, в отличии от 2го... В чем тогда его смысл? И какой командой можно открыть сам файл (а не консоль) и посмотреть результат? Может я в чем то запутался?.. З.Ы. Команды из урока не открывают файл.
|
AlPer
24 июн 2015 20:02
Задача №1
FileStream file = new FileStream("e:\\numbers.txt",FileMode.OpenOrCreate); StreamWriter write = new StreamWriter(file); string str=null; for (int i = 1; i < 501; i++) { str += i; if (i < 500) str += ", "; } Console.Write(str); Console.ReadLine(); write.Write(str); write.Close();
Задача №2
string[] str = { "red", "green", "black", "white", "blue" }; FileStream file = new FileStream("e:\\colors.txt", FileMode.OpenOrCreate); StreamWriter write = new StreamWriter(file); foreach (var item in str) { Console.WriteLine(item); write.WriteLine(item); } Console.ReadLine(); write.Close();
Задача №3 // по моему лёд тронулся (глядя на предыдущий мой код)
static void Main() { string[] MasStr = File.ReadAllLines("e:\\rar1.txt", Encoding.GetEncoding(1251)); int max = 0; foreach (var item in MasStr) { if (item.Length > max) { max = item.Length; } } Console.WriteLine("Размер самой большой строки в файле: {0}",max); Console.ReadLine(); }
|
Владимир
12 июн 2015 22:23
c 3 пришлось повозиться, долго не мог догнать, как сделать считывание по строкам, потом посмотрел, что другие делают через while пока не будет достигнут конец потока(файла)...
StreamReader reader = new StreamReader("d:\\test.txt"); string max = reader.ReadLine(); while (!reader.EndOfStream) { string stroka = reader.ReadLine(); if (max.Length < stroka.Length) max = stroka; } reader.Close(); Console.WriteLine("Длинна самой длинной строки: " +max.Length); Console.ReadKey();
|
Юлия
08 июн 2015 07:04
static void Main(string[] args) { int rez = 0; FileStream file1=new FileStream ("c:\\numbers.txt", FileMode.Open); StreamReader reader = new StreamReader(file1); do { string s = reader.ReadLine(); if (rez < s.Length) { rez = s.Length; } } while (reader.EndOfStream == false); reader.Close(); Console.Write(rez); Console.ReadLine(); }
|
Юлия
08 июн 2015 06:38
static void Main(string[] args) { FileStream file1=new FileStream ("c:\\numbers.txt", FileMode.Create); StreamWriter writer = new StreamWriter(file1); String[] color = { "red","green","black","white","blue" }; for (int i = 0; i < color.Length; i++) { writer.Write( color[i]+"\r\n"); } writer.Close();
}
|
Юлия
08 июн 2015 06:30
static void Main(string[] args) { FileStream file1=new FileStream ("c:\\numbers.txt", FileMode.Create); StreamWriter writer = new StreamWriter(file1); for (int i = 0; i < 500; i++) { int p = i+1; String s = p + ",";
writer.Write(s); } writer.Close();
}
|
vv-ch
28 май 2015 18:11
static void Main(string[] args) { //Задача 2 и 1 string[] colors = new string[5] { "red", "green", "black", "white", "blue" }; FileStream task_1_2 = new FileStream("C:/Users/SP/documents/visual studio 2013/Projects/c_sharp sol/task1.txt", FileMode.OpenOrCreate, FileAccess.ReadWrite); StreamWriter writer = new StreamWriter(task_1_2); writer.WriteLine("Задача 1"); for(int i=1; i<=500; i++) { writer.Write(i + ", "); } writer.WriteLine(); writer.WriteLine("Задача 2"); for (int i = 0; i < 5; i++) { writer.WriteLine(" " + colors[i]); } writer.Close(); task_1_2.Close(); //Дальше 3 задача FileStream task_3 = new FileStream("C:/Users/SP/documents/visual studio 2013/Projects/c_sharp sol/task3.txt", FileMode.Open, FileAccess.ReadWrite); StreamReader reader = new StreamReader(task_3); int mx = -1; while (true) { try { string s = reader.ReadLine(); mx = Math.Max(mx, s.Length); } catch(Exception) { break; } } Console.WriteLine(mx); reader.Close(); task_3.Close(); }
|
Азар
28 май 2015 00:40
using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; using System.IO; namespace ConsoleApplication44 { class Program { static void Main(string[] args) { string path = "C:\\Numbers14.txt"; FileStream mail = new FileStream(path, FileMode.Create);//файловый поток StreamWriter obj = new StreamWriter(mail);//потоковый писатель int l=1; for (int i = 1; i <= 500; i++) { obj.Write("{0}, ", i); if (i > 19 * l) { obj.WriteLine(); l++; } } obj.Close(); StreamReader obj1 = new StreamReader(path); Console.WriteLine(obj1.ReadToEnd()); obj1.Close(); Console.ReadKey(); } } }
|
Warguss
27 май 2015 22:36
Задача 3:
static void Main() { string file = "F:/file.txt";
// Создаем массив строк(считанных из файла) string[] lines = File.ReadAllLines(file);
// переменная для записи длинны строки int str = 0;
// переменная для записи индекса массива int index = 0;
// проходим в цикле по массиву строк for (int i = 0; i < lines.Length; i++) { // Сравниваем длину каждой строки if (lines[i].Length > str) { str = lines[i].Length; index = i; } }
Console.WriteLine("Самая длинная строка: {0} ", lines[index]);
Console.ReadLine(); }
|
Warguss
27 май 2015 21:37
Задача 2
static void Main() { // Путь к файлу string path_faila = "F:/C#/Colors.txt"; // массив строк string[] arrayLines = { "red", "green", "black", "white", "blue" };
// создаем файловый поток // создаем «потоковый писатель» и связываем его с файловым потоком FileStream file = new FileStream(path_faila, FileMode.Create); StreamWriter writer = new StreamWriter(file);
// записываем в файл, по строчна foreach (string str in arrayLines) { writer.WriteLine(str); }
// закрываем поток writer.Close(); }
|
Warguss
27 май 2015 20:56
Задача 1
using System; using System.IO;
namespace lesson_system_io { internal class Program { private static void Main() { string str = "F:/C#/numbers.txt";
// создаем файловый поток FileStream file = new FileStream(str, FileMode.Create);
// создаем «потоковый писатель» и связываем его с файловым потоком StreamWriter writer = new StreamWriter(file);
// записываем в файл for (int i = 1; i <= 500; i++) { writer.WriteLine(i); }
// закрываем поток writer.Close();
// создаем «потоковый читатель» и связываем его с файловым потоком StreamReader reader = new StreamReader(str);
// считываем все данные с потока и выводим на экран Console.WriteLine(reader.ReadToEnd()); reader.Close();
Console.ReadKey(); } } }
|
Flamingo
20 май 2015 15:21
static void Main(string[] args) { string[] colors = { "red", "green", "black", "white", "blue" }; FileStream File = new FileStream("C:\\Users\\Артём\\Desktop\\С#\\For_Some_Files\\New_File.txt", FileMode.Open, FileAccess.ReadWrite); StreamReader Reader = new StreamReader(File); string x = "", max = ""; while (!Reader.EndOfStream) { x = Reader.ReadLine(); if (x.Length > max.Length) { max = x; } } Console.WriteLine(max); Console.ReadKey(); }
|
Александр_Бугай
06 май 2015 19:11
Задача 3. FileStream file1 = new FileStream("D:/Я/IT/C#/Example/Example1/Настройки маршрутизатора.txt", FileMode.Open); //создаем файловый поток StreamReader reader = new StreamReader(file1); // создаем «потоковый читатель» и связываем его с файловым потоком bool end = true; string max, x, y; x = reader.ReadLine(); while( end = !reader.EndOfStream) { y = reader.ReadLine(); if (String.Compare(y, x) >= 0) { x = y; } } max = x; Console.WriteLine("Длина самой длинной строки" + max.Length); reader.Close(); //закрываем поток Console.ReadLine();
|
Александр_Бугай
06 май 2015 14:19
Задача 2 string[]array = new string[5]{"red", "green", "black", "white", "blue"}; FileStream file1 = new FileStream("D:/colour.txt", FileMode.Create); StreamWriter writer = new StreamWriter(file1); for (int i = 0; i < 5; i++) { writer.WriteLine(array[i]); } writer.Close();
|
Александр_Бугай
06 май 2015 11:28
Задача 1 FileStream file1 = new FileStream("D:\\new_file.txt", FileMode.Create); StreamWriter writer = new StreamWriter(file1); for (int i = 1; i <500; i++) { writer.Write(i + ","); } writer.Write(500); writer.Close();
|
phoenix
16 апр 2015 12:00
/* Задача 1. Создайте файл numbers.txt и запишите в него натуральные числа от 1 до 500 через запятую.*/ using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.IO;
namespace WorkWithFile { class Program { static void Main(string[] args) { FileStream File_Number = new FileStream("d:\\numbers.txt", FileMode.Create); StreamWriter Writer_number = new StreamWriter(File_Number); for (int i = 1; i < 501; i++) { if (i != 500) { Writer_number.Write(i + ", "); } else { Writer_number.Write(i + "."); } } Writer_number.Close(); } } }
/* Задача 2. Дан массив строк: "red", "green", "black", "white", "blue". Запишите в файл элементы массива построчно (каждый элемент в новой строке).*/ using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.IO;
namespace WorkWithFile { class Program { static void Main(string[] args) { string[] Colors = { "red", "green", "black", "white", "blue" }; FileStream stream_colors = new FileStream("D:\\Colors.txt", FileMode.Create); StreamWriter Writer_colors = new StreamWriter(stream_colors); for (int i = 0; i < Colors.Length; i++) { Writer_colors.WriteLine(Colors[i]); } Writer_colors.Close(); } } }
/* Задача 3. Возьмите любой текстовый файл, и найдите в нем размер самой длинной строки.*/ using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.IO;
namespace WorkWithFile { class Program { static void Main(string[] args) { int length_finding_line = 0; int number_finding_line = 0; int counter_line = 0; string current_line, finding_line; Console.WriteLine("Введите полный путь к текстовому файлу: (например D:\\1.txt)"); FileStream stream_script_file = new FileStream(Console.ReadLine(), FileMode.Open); StreamReader reader_script_file = new StreamReader(stream_script_file, Encoding.ASCII); while (!reader_script_file.EndOfStream) { current_line = (reader_script_file.ReadLine()); counter_line++; if (current_line.Length > length_finding_line) { length_finding_line = current_line.Length; finding_line = current_line; number_finding_line = counter_line; } } Console.WriteLine("В файле " + stream_script_file.Name + " самая длинная строка с №" + number_finding_line + " В ней " + length_finding_line + " символов."); Console.ReadKey(); } } }
|
Сергей
08 апр 2015 17:59
Получилось громоздко, но пока не могу привыкнуть к ООП.
namespace Lession_11_3 { class Program { static void Main(string[] args) { List<string> array = new List<string>(); int a = 0; string str = "0"; try { StreamReader file1 = new StreamReader("C:\\Users\\Sergey\\Desktop\\песнь об Олеге.txt"); do { array.Add(file1.ReadLine()); Console.WriteLine(array[a]); a++; } while (!(file1.EndOfStream)); for (int i = 0; i < a; i++) { if (str.Length < array[i].Length) { str = array[i]; } } file1.Close(); Console.WriteLine("\nСамой длинной строкой является \"{0}\" ее длинна составляет {1} символов", str, str.Length); } catch(Exception) { Console.WriteLine("Создайте файл с названием \"Песнь об Олеге.txt\" по адресу \"C:\\Users\\Sergey\\Desktop\\\" и заполните его в кодировке UTF-8."); } Console.ReadKey(); } } }
|
Nikita
24 мар 2015 00:44
Третья задачка заинтересовала очень :) Пользуясь случаем скажу автору спасибо, курс написан лучше, чем видео-уроки от МС.
static void Main() { StreamReader reader = new StreamReader("D:/unlegit/source/config.au3"); int longestLine = 0; int curLine;
while (!reader.EndOfStream) { curLine = reader.ReadLine().Length; if (curLine > longestLine) { longestLine = curLine; } } reader.Close();
Console.Write(longestLine); Console.ReadKey(); }
|
Andriy
17 мар 2015 22:42
Друге та третє завдання:
2:
static void Main() { FileStream file2 = new FileStream("d:\\text.txt", FileMode.Create); StreamWriter zapusnuk2 = new StreamWriter(file2);
string[] text = new string[5] { "red", "green", "black", "white", "blue" };
for (int i = 0; i < 5; i++ ) { zapusnuk2.WriteLine(text[i]); } zapusnuk2.Close(); }
3:
static void Main() { FileStream file3 = new FileStream("d:\\text.txt", FileMode.Open); StreamReader chutach = new StreamReader(file3); string s; int n=0;
while (!(chutach.EndOfStream)) { s=chutach.ReadLine(); if (s.Length>n) n = s.Length; }
chutach.Close(); //закрываем поток Console.WriteLine("Dovshuna naybilshoi stroku: "+n); Console.ReadLine();
|
Евгений
15 мар 2015 21:04
Дана последовательность,содержащая от 2 до 30 слов,в каждом из которых от 2 до 10 латинских букв;между соседними словами-не менее одного пробела,за последним словом - точка.Напечатать все слова отличные от последнего слова,предварительно преобразовав каждое из них по следующему правилу:удалить из слова последнюю букву.
|
Максим
11 мар 2015 09:26
Виталий --- Файл должен быть в одной папке с программой, а не с файлом ".cs", перенесите файл в bin/debug/
|
Виталий
10 мар 2015 21:49
Здравствуйте! Прошел все уроки, сейчас, программируя прокси-сервер, столкнулся с проблемой: пишет что не нашел файл. Вопрос: как правильно ввести адрес файла стоящего в одной директории с файлом .cs?
FileStream add = new FileStream("addhref.txt", FileMode.Open, FileAccess.Read);
P.S: писал по принципу, который использовал в html.
|
Руслан
06 мар 2015 11:28
public static void Main(string[] args) { Directory.CreateDirectory("d:\\programm"); FileStream file = new FileStream(@"d:\\programm\numbers.txt",FileMode.Create); StreamWriter writer = new StreamWriter(file); for (int i = 1; i<=500 ;i++ )writer.Write(i+", "); writer.Close(); Console.Write("Press any key to continue . . . "); Console.ReadKey(true); }
|
G1ffy
05 мар 2015 20:27
Вот 1 и 2 задания, 3 покачто не получается...
//-----------------------------1-------------------------------- Directory.CreateDirectory("C:\\test_program1"); StreamWriter writter = new StreamWriter("C:\\text1.txt"); for (int i = 1; i < 500; i++) { writter.Write(i); if (i < 500) writter.Write(","); } writter.Close();
//-----------------------------2-------------------------------- string[] colourMas = { "red", "green", "black", "white", "blue" }; StreamWriter writter = new StreamWriter("C:\\text2.txt"); foreach (string col in colourMas) { writter.WriteLine(col); } writter.Close();
|
Stahma
23 фев 2015 15:01
namespace ConsoleApplication1 { class Program { static void Main(string[] args) { FileStream File = new FileStream("D:\\test.txt", FileMode.Open, FileAccess.Read); StreamReader reader = new StreamReader(File, Encoding.Default); string s = ""; int length =0,count =0,detect =0; bool a; do { count++; s = reader.ReadLine(); Console.WriteLine(s); if (s.Length >length) { length = s.Length; detect = count; } a = reader.EndOfStream; } while (!a); Console.WriteLine("Самая длинная строка №{0}",detect); } } }
|
Stahma
23 фев 2015 02:07
Task1:
using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.IO; namespace ConsoleApplication1 { class Program { static void Main(string[] args) { FileStream file = new FileStream("D:\\numbers.txt", FileMode.CreateNew); StreamWriter numbers = new StreamWriter(file); for (int i = 1; i <= 500; i++) { numbers.Write(" " + i); } numbers.Close(); } } }
|
Максим
20 фев 2015 20:33
Ярослав --- В третьем задании вы должны были считывать файл построчно методом ReadLine() в цикле пока не считаете все строки в файле, при этом проверяя длину строки. Так, как надо сделал Anatoliy (комментарий от 19 фев 2015 21:01)
|
Ярослав
20 фев 2015 18:27
1
using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.IO;
namespace ConsoleApplication1 { class Program { static void Main(string[] args) { FileStream file1 = new FileStream("D:\\numbers.txt", FileMode.Create); StreamWriter writer = new StreamWriter(file1); for (int i = 1; i <= 500; i ++) { writer.Write(i); if (i < 500) writer.Write(","); } writer.Close();
} } }
2
using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.IO;
namespace ConsoleApplication1 { class Program { static void Main(string[] args) { string[] colors = {"red","white","green","black","blue"}; FileStream file1 = new FileStream("D:\\colors.txt", FileMode.Create); StreamWriter writer = new StreamWriter(file1); foreach (string el in colors) { writer.WriteLine(el); } writer.Close(); } } }
3
using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.IO;
namespace ConsoleApplication1 { class Program { public static string ReturnMinNumber(string[] array) { string min = array[0]; for (int i = 0; i < array.Length; i++) { if ((String.Compare(array[i], array[0])) == -1) min = array[i]; } return min; }
static void Main(string[] args) { FileStream file1 = new FileStream("d:\\colors.txt", FileMode.Open); StreamReader reader = new StreamReader(file1); string somestr = reader.ReadLine(); reader.Close(); string[] masscolors = somestr.Split(','); Console.WriteLine(ReturnMinNumber(masscolors)); Console.ReadLine(); } } }
Разбить строку через запитую получилось, а как сделать разбивку если у файле, новые слова начинаются с новой строчки не знаю. Через .Split('\r\n') не получилось.
Подскажите правильны ли сделанные задания выше.
|
Anatoliy
19 фев 2015 21:33
ВОТ ТЕПЕРЬ она работает как надо!!!!Сам написал))))
StreamReader reader = new StreamReader("d:\\TOLA\\НАВЧАННЯ\\C#\\1.txt"); string ALL = reader.ReadToEnd(); int max = 0; string[] mass = ALL.Split(' '); for (int i = 0; i < mass.Length; i++) { if (mass[i].Length > max) { max = mass[i].Length; }
} Console.WriteLine(max); reader.Close(); Console.ReadLine();
|
Максим
19 фев 2015 21:19
Anatoliy --- Программа работает как надо
|
Anatoliy
19 фев 2015 21:01
подскажите ,что исправить,чтоб работало?Ато мне выводит длину как сумму всех строк
int count=0; StreamReader reader = new StreamReader("d:\\TOLA\\НАВЧАННЯ\\C#\\1.txt"); string MaxS = ""; do { MaxS = reader.ReadLine(); if (MaxS.Length > count) count = MaxS.Length; } while (!reader.EndOfStream); Console.WriteLine(count); reader.Close(); Console.ReadLine();
|
AlPer
19 фев 2015 13:10
зря наверное вообще массивы использовал ..надо было просто с потоком работать и все
|
AlPer
18 фев 2015 23:04
using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; using System.IO;
namespace chump_0 { class Program { static void Main(string[] args) { //Console.OutputEncoding = System.Text.Encoding.GetEncoding(866); string path = "e:/Rar.txt";
var s = string.Empty; int j = 0, max = 0, k = 0; StreamReader reader = new StreamReader(path, Encoding.GetEncoding(1251)); int countSTR = System.IO.File.ReadAllLines(path).Length; Console.WriteLine(reader.ReadToEnd() + "\n количество строк в тексте {0}",countSTR); int[] a = new int[countSTR]; string[] str = new string[countSTR]; reader.BaseStream.Position = 0; reader.DiscardBufferedData();
string[] NewFile = File.ReadAllLines(path);
foreach (var item in NewFile) { str[j] = item; a[j] = item.Length; Console.WriteLine("Длина {0} строки = {1}: {2}", j, a[j], str[j]); if (max<a[j]) { max = a[j]; k = j; } j++; } Console.WriteLine("\nБольше всего символов в строке {0} - их {1}",k+1,max); reader.Close(); Console.ReadKey(); //мои вопросы. 1. Когда файл небольшой работает. А когда строк эдак 2000 - не работает. Почему? 2. Есть ли грубые ошибки?
|
Максим
07 фев 2015 14:31
Дмитрий --- Файлы MS Word это же не просто текстовые файлы, они очень сложные, много метаданных и тут вопрос совсем не в кодировке. Для работы с файлами MS Word нужно подключать различные внешние библиотеки, например DocX. Сам я этим не занимался. Для интереса, отктройте файл docx архиватором WinRAR
|
Дмитрий
06 фев 2015 22:16
Здравствуйте. Подскажите пожалуйста в какай кодировке открыть документ Microsoft Word.docx. Пробовал разные кодировки выходит одна "абра кодабра"
|
Дмитрий
06 фев 2015 21:27
string text = ""; string text1 = ""; int textNam = 0; int texMax = 0; int flag = 0; int r = 0;
FileStream fileRead = new FileStream("d:\\text.txt", FileMode.Open ); StreamReader reader = new StreamReader(fileRead, Encoding.Default);
while (reader.EndOfStream == false) { text = reader.ReadLine(); textNam = text.Length;
if (textNam > texMax) { texMax = textNam; text1 = text; flag = r; } r++; }
Console.WriteLine(flag + 1 + "-ая итерация, " + texMax + " - символов.\r\nТекст: " + text1 + ".\r\n");
reader.Close(); //закрываем поток Console.ReadLine();
|
Slavik
12 янв 2015 16:09
static void Main(string[] args) { int i=0; string[] colors= new string[5] {"red","green","black","white","blue"} ; FileStream file1 = new FileStream("a:\\Main.txt", FileMode.Create); StreamWriter writer = new StreamWriter(file1); for (i = 0; i <colors.Length; i++) writer.WriteLine(colors[i]); writer.Close(); }
|
Deltazone
26 дек 2014 14:29
public static void Main(string[] args) { FileStream colours = new FileStream("C:\\colors.txt", FileMode.Create); StreamWriter wr = new StreamWriter(colours); string[] clr = {"red", "green", "black", "white", "blue"}; for (int i = 0; i < clr.Length; i++) { wr.Write(clr[i] + "\r\n"); } wr.Close(); }
|
AlexWolf
24 дек 2014 13:35
Точно! Спасибо Admin. Как-то не заметил. ))
|
Максим
24 дек 2014 12:08
AlexWolf --- В том, что вы пытаетесь найти строку в массиве целых чисел, MAX не надо в строку конвертировать: int str = Array.IndexOf(mas,MAX) + 1;
|
AlexWolf
23 дек 2014 17:08
Вот третье задание. Уважаемый admin, нужна ваша помощь. Почему у меня в задании выводится размер самой длинной строки верно, а номер это строки нет? Вместо нужного индекса он пишет -1... В чем ошибка?
static void Main(string[] args) { string stroka = ""; int dlstrk = 0; int i = 0; List<int> newmas = new List<int>(i);
Console.Write("Введите путь к файлу: "); FileStream fi1e = new FileStream(Console.ReadLine(), FileMode.Open); StreamReader read = new StreamReader(fi1e); while (!read.EndOfStream) { stroka = read.ReadLine(); i++; dlstrk = stroka.Length; newmas.Add(dlstrk); }
int[] mas = newmas.ToArray(); int MAX=mas[0]; for (int x = 0; x < mas.Length; x++) { if (mas[x] > MAX) MAX = mas[x]; } int str = Array.IndexOf(mas,MAX.ToString()); Console.Write("Самая длинная строка № " + str + " содержит " + MAX.ToString() + " cимволов."); Console.ReadKey(); }
|
Максим
17 дек 2014 22:42
FireDragon --- File.Create("C:/testing/some.txt") создает файловый поток и в этот момент файл уже занят, но методом AppendAllText вы снова пытаетесь открыть тот же файл. Для работы с файлами советую пользоваться потоками, об этом в уроке написано, и ниже в комментариях есть примеры, например от Диманиак.
|
FireDragon
17 дек 2014 06:45
Помогите, пишет что файл(текстовый) используется другим процессом
namespace files { class Program { public static void Main(string[] args) { Directory.CreateDirectory("C:/testing/"); File.Create("C:/testing/some.txt"); string[] strings = {"red", "green", "black", "white", "blue"}; for (int i = 0; i < 4; i++) { File.AppendAllText("C:/testing/some.txt", "\r\n" + strings[i]); } Console.ReadKey(); } } }
|
Диманиак
21 ноя 2014 19:57
StreamWriter writer = new StreamWriter("e:\\numbers.txt"); string str=""; for (int i = 1; i <= 500; i++) str += i.ToString() + (i == 500 ? "\r\n" : ","); writer.Write(str); writer.Close(); StreamWriter writer2 = new StreamWriter("e:\\colors.txt"); string[] colors = { "red", "green", "black", "white", "blue" }; foreach (string color in colors) writer2.WriteLine(color); writer2.Close(); StreamReader reader = new StreamReader("e:\\colors.txt"); int MaxStrLength=0; while (reader.EndOfStream == false) { int strLength = reader.ReadLine().Length; MaxStrLength = (MaxStrLength > strLength ? MaxStrLength : strLength); } Console.WriteLine("Размер самой длинной строки равен " + MaxStrLength); Console.ReadKey();
|
Alex
10 ноя 2014 22:41
Извините, там в 3 задании просто выводит самую длинную строчку на экран, а если еще и символы посчитать то надо этот код добавить Console.WriteLine((maxLengthString.Length).ToString());
|
Alex
10 ноя 2014 22:37
Вот с 2 первыми справился минут за 5-7, зато с последним час сидел, потом посмотрел как другие сделали, почему-то не понравилось... начал капать... Вот что вышло: class Program { static void Main(string[] args) { // первое for (int i = 1; i < 501; i++) { File.AppendAllText("E:\\numbers.txt", (i.ToString() + ", ")); } //---------------------------------- ВТОРОЕ // Дан массив строк: "red", "green", "black", "white", "blue". // Запишите в файл элементы массива построчно (каждый элемент в новой строке). string[] Colors = new string[5] { "red", "green", "black", "white", "blue" }; StreamWriter file1 = new StreamWriter("E:\\Colors.txt"); for (int i = 0; i < Colors.Length; i++) { file1.WriteLine(Colors[i]); }
file1.Close(); //------------------------------------------ТРЕТЬЕ string[] s = File.ReadAllLines("E:\\My_Docs\\112.txt",Encoding.Default); string maxLengthString = s.OrderByDescending(d => d.Length).ToArray()[0]; Console.WriteLine(maxLengthString); Console.ReadKey();
|
Julia
07 ноя 2014 14:38
//********** 1Task ***************************************************************************** StreamWriter Numbers = new StreamWriter("C:\\Users\\Julia\\Desktop\\C#\\Files\\numbers.txt"); for (int i = 1; i < 501; i++) { Numbers.Write(i + ", "); } Numbers.Close(); //********** 2Task ****************************************************************************** StreamWriter Numbers2 = new StreamWriter("C:\\Users\\Julia\\Desktop\\C#\\Files\\numbers2.txt"); string[] Colore = new string[5] { "red", "green", "black", "white", "blue" };
for (int i = 1; i < Colore.Length; i++) { Numbers2.WriteLine(Colore[i] + ", "); } Numbers2.Close();
//********** 3Task ****************************************************************************** class Program { public static String[] GetText(String[] text) { int i = 0; while (i < text.Length) { text[i] = Console.ReadLine(); i++; } return text; }
static void Main(string[] args) { String[] Text = new String[3];
Text = GetText(Text); StreamWriter Letter = new StreamWriter("C:\\Users\\Julia\\Desktop\\C#\\Files\\Letter.txt"); for (int i = 0; i < Text.Length; i++) { Letter.WriteLine(Text[i]); } Letter.Close(); Console.ReadKey(); StreamReader CountLine = new StreamReader("C:\\Users\\Julia\\Desktop\\C#\\Files\\Letter.txt"); String Line1 = CountLine.ReadLine(); int MaxLine = Line1.Length;
while (!CountLine.EndOfStream) { String Line = CountLine.ReadLine(); if (Line.Length > MaxLine ) { MaxLine = Line.Length; } } CountLine.Close(); Console.Clear(); Console.WriteLine("\n Длина строки:" + MaxLine); Console.ReadKey(); } } }
|
Slavik
28 сен 2014 23:16
спасибо за уроки 1
class Program { static void Main(string[] args) { for(int i = 1; i <= 500; i++) { if(i == 500) File.AppendAllText("D:\\02 C#\\02 Programs\\12workwithtext\\fivhundred\\file.txt", i + "."); else File.AppendAllText("D:\\02 C#\\02 Programs\\12workwithtext\\fivhundred\\file.txt", i + ", "); } } }
2
static void Main(string[] args) { string[] array = {"red", "green", "black", "white", "blue"}; StreamWriter write = new StreamWriter("D:\\02 C#\\02 Programs\\12workwithtext\\massiv\\file2.txt"); for (int i = 0; i < array.Length; i++) { write.WriteLine(array[i]); // write.Close(); } write.Close(); }
3 (посмотрел как другие делали, списал немного, трудноватое задание )
static void Main(string[] args) { string longestString = ""; int sizeMax = 0; StreamReader readFile = new StreamReader("D:\\02 C#\\02 Programs\\12workwithtext\\bigstring\\file2.txt"); do { longestString = readFile.ReadLine(); if (longestString.Length > sizeMax) sizeMax = longestString.Length;
} while (!readFile.EndOfStream); Console.WriteLine(sizeMax); Console.ReadKey(); }
|
Firik
12 сен 2014 22:28
1 задание, без запятой в конце
StreamWriter writer = new StreamWriter("d://number.txt"); for (int i = 1; i < 501; i++) { if (i == 500) { writer.Write(i); break; } writer.Write(i + ", "); } writer.Close();
|
Di3go
22 авг 2014 00:06
Неплохо получилось вроде
using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Net; using System.IO;
namespace HelloWorld {
class Program { static void Main(string[] args) { FileStream file = new FileStream("..//..//tes.txt", FileMode.Open); StreamReader sr = new StreamReader(file); int buff = 0; int temp = 0; int numb = 0; for(int i = 1;; i++) { temp = sr.ReadLine().Length; if (temp > buff) { buff = temp; numb = i; } if(sr.EndOfStream) break; } sr.Close(); Console.WriteLine("Size - \t\t" + buff); Console.WriteLine("Position - \t" + numb); Console.ReadKey(); } }
}
|
nadjon4ik
30 июл 2014 23:48
1.FileStream file1 = new FileStream("d:\\new_folder\\test.txt", FileMode.Create); StreamWriter write = new StreamWriter(file1); for (int i = 1; i <= 500;++i) { write.Write("{0}, ", i); } write.Close(); 2.FileStream file1 = new FileStream("d://new_folder//test2.txt",FileMode.Create); StreamWriter writer = new StreamWriter(file1); string[] mas = { "red", "green", "black", "white", "blue" }; foreach (string i in mas) { writer.WriteLine(i); } writer.Close(); 3.FileStream file = new FileStream("d:\\new_folder\\Ковалев С. В. Введение в современное НЛП - 2007.txt", FileMode.Open); StreamReader reader = new StreamReader(file); string line = "", newline = ""; int count = 0; while (!reader.EndOfStream) { line = reader.ReadLine(); if (line.Length > count) { count = line.Length; newline = line; } } Console.WriteLine(newline+"-"+count); Console.ReadKey();
|
n0n4m3r
30 июл 2014 11:52
StreamWriter write = new StreamWriter("S:\\test.txt"); for (int i = 0; i < 500; ++i) //Тут можно for (int i = 1; i <= 500; ++i); write.Write((i+1) + " "); //write.Write(i + " "); write.WriteLine(); string[] colors = { "red", "green", "blue", "black", "white" }; for (int i = 0; i < colors.Length; ++i) { write.WriteLine(colors[i]); } write.Close(); StreamReader read = new StreamReader("S:\\test2.txt"); int lenght = 0; string line = "", longestLine = ""; if (!read.EndOfStream) { line = read.ReadLine(); if (line.Length > lenght) { lenght = line.Length; longestLine = line; } } Console.WriteLine("Longest line is: " + longestLine + "\nSize of line is: " + lenght); read.Close();
Console.ReadKey();
|
йфяцу
02 июл 2014 15:10
Не сразу понял, что для 3 задания лучше не использовать файл с номерами, созданный в первом. 2351 символ, блджад
|
Максим
02 июл 2014 01:08
AlexSerikov --- writeColors.WriteLine(colorArray); //здесь вместо colorArray должно быть i
|
AlexSerikov
01 июл 2014 22:19
Admin, надежда на Вас ! Проблема со 2-м заданием (с остальными справился) Файл создается и туда вместо цветов записываются строки: System.String[] System.String[] System.String[] System.String[] System.String[] вот так) Не могу понять в чем проблема. Посмотрел программы других пользователей. В роде так же все работает. В консоль вывел цвета из массива строк, там все нормально. Свой shit-Код прилагаю.
string[] colorArray = { "red", "green", "black", "white", "blue" }; foreach (string c in colorArray) { Console.WriteLine(c); } FileStream file2 = new FileStream ("d:\\colors.txt", FileMode.Create, FileAccess.Write); StreamWriter writeColors = new StreamWriter(file2); foreach (string i in colorArray) { writeColors.WriteLine(colorArray); } writeColors.Close(); Console.ReadKey();
Заранее благодарю. Очень сильно помогаете!
|
Alinka
07 апр 2014 17:06
1. class Numbers { static void Main() { int[] arr = new int[500]; for (int i = 0; i < arr.Length; i++) { arr[i] = i+1; } FileStream fs = new FileStream("C:\\Users\\Alina\\Documents\\Visual Studio 2012\\Projects\\уроки\\урок11\\numbers.txt", FileMode.Create, FileAccess.Write); StreamWriter writer = new StreamWriter(fs); for (int i = 0; i < arr.Length; i++) { writer.Write(arr[i]); if ((arr[i] % 100 == 0) & (i!=(arr.Length-1))) { writer.WriteLine(","); } else if (i!=(arr.Length-1)) { writer.Write(","); } else { writer.Write("."); } } writer.Close(); } }
2. class Colors { static void Main() { string[] color = { "red", "green", "black", "white", "blue" }; FileStream fs = new FileStream("C:\\Users\\Alina\\Documents\\Visual Studio 2012\\Projects\\уроки\\урок11\\colors.txt",FileMode.Create, FileAccess.Write); StreamWriter writer = new StreamWriter(fs); foreach (string c in color) { writer.WriteLine(c); } writer.Close(); } }
3. class Lenght { static void Main() { StreamReader read = new StreamReader("C:\\Users\\Alina\\Documents\\Visual Studio 2012\\Projects\\уроки\\урок11\\Новый текстовый документ.txt"); int max = 0; while (!read.EndOfStream) { string s = read.ReadLine(); if (s.Length > max) max = s.Length; } Console.WriteLine(max); Console.ReadKey(); } }
|
Ромик
02 апр 2014 12:32
тяженько мне далось первое задание StreamWriter reader = new StreamWriter("D:\\text.txt"); for (int i = 1; i < 501; i++) { if (i < 500) reader.Write(Convert.ToString(i) + ", "); else reader.Write(Convert.ToString(i)); } reader.Close();
|
Евгений
18 мар 2014 12:00
Задача 2. string[] array = { "White", "Green", "Blue", "Red", "Yellow" }; StreamWriter writer=new StreamWriter("d:\\colours.txt"); for (int i=0; i<array.Length;i++) {
writer.WriteLine(array[i]); } writer.Close();
|
Евгений
18 мар 2014 10:39
Задача 1. static void Main(string[] args) { StreamWriter writer = new StreamWriter("d:\\numbers.txt"); for (int i = 1; i < 501; i++){ writer.Write(i+","); } writer.Close();
}
|
Максим
05 мар 2014 19:30
ShpilkinVilkin --- Проверка пуста ли папка: if ( System.IO.Directory.GetFiles("d://folder_name").Length == 0 ) //пуста
При удалении папки с файлами без указания рекурсивности, будет выброшено исключение IOException
|
ShpilkinVilkin
05 мар 2014 12:12
Как узнать..пуста ли папка или нет...
И к чему приведет, применение метода DELETE без параметра тру к "полной" папке)
|
Katrin
01 мар 2014 09:19
Тяжеловато было с третьим заданием справиться. Вот что в итоге вышло:
public static void Main() { Console.WriteLine("Введите путь к текстовому файлу: "); string s = Console.ReadLine(); FileStream file1 = new FileStream(s, FileMode.Open); StreamReader reader = new StreamReader(file1,Encoding.Unicode); int i=0;//длина строки while (!reader.EndOfStream) { string stroka=reader.ReadLine();//считываем одну строку int n = stroka.Length;//вычисляем ее длину if (i < n) i = n;//сравниваем с длиной предыдущей строки continue;//переходим к следующей } Console.WriteLine("Длина самой длинной строки равна: "+i); reader.Close(); Console.Read(); }
|
Arhip
20 фев 2014 13:36
using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.IO;
namespace ConsoleApplication1 { class Program {
static void Main(string[] args) { string[] arr = new string[20]; int max = 0;
FileStream file = new FileStream("C:\\zvoni.txt", FileMode.Open); StreamReader reader = new StreamReader(file);
for (int i = 0; i < arr.Length; i++) { arr[i] = reader.ReadLine(); if (max < arr[i].Length) // тут ошибка - в экземпляре объекта не задана ссылка на объект. урок 10 читал. все равно не врубаюсь как так max = i; } Console.WriteLine(max); reader.Close(); } } }
|
Xirus
18 фев 2014 15:24
задача 2 string[] s = { "red", "green", "black", "white", "blue" }; FileStream file = new FileStream("c:\\text.txt",FileMode.Create); StreamWriter write = new StreamWriter(file); for (int i = 0; i < s.Length; i++) write.WriteLine(s[i]); write.Close();
|
Xirus
18 фев 2014 15:09
задача 1 for (int i = 0; i < 501;i++ ) File.AppendAllText("C:\\numbers.txt",i+",");
|
Максим
09 фев 2014 17:31
Александр --- Под специальными настройками имелись в виду режим доступа, режим открытия, способ совместного использования файла (FileShare). Здесь могут быть различные варианты, а при создании напрямую, например StreamReader, поток будет только на чтение. В уроке файловый поток создавался отдельно для наглядности
|
Александр
07 фев 2014 02:34
Вы меня не правильно поняли. Я и писал. ЗАЧЕМ мы создаем поток файла, если можем сократить наш код МИНИМУМ на 1 строку, если будем поток читателя связывать с файлом напрямую. Вы написали про какие то спец. настройки. Какие именно, подскажите пожалуйста.
|
Максим
05 фев 2014 18:05
Александр --- В уроке об этом написано:
"Кроме того, при использовании StreamReader и StreamWriter можно не создавать отдельно файловый поток FileStream, а сделать это сразу при создании StreamReader/StreamWriter:"
При таком варианте создается тот же поток, только с настройками по умолчанию. Если нужно какие-то специфические настройки потока, тогда стоит создавать отдельно FileStream
|
Александр
05 фев 2014 10:44
Admin -------- Тоесть, при закрытие записывающего потока, я закрываю и поток файла??? Как то странно. Зачем тогда вообще делать поток файла, если я могу поток читатель/писатель напрямую завязать на файл. Ведь по количеству когда это будет меньше(адрес файла в любом случае писать, но при связывании напрямую мы исключаем строку объявления файлового потока)
|
Максим
04 фев 2014 15:47
Александр --- FileStream f1 = new FileStream("d:\\numbers.txt", FileMode.Create, FileAccess.ReadWrite); // Здесь вы создали поток w1.Close(); // Здесь вы его закрыли
Чтобы прочитать файл нужно чтобы поток был открыт (создадим новый):
FileStream f1 = new FileStream("d:\\numbers.txt", FileMode.Create, FileAccess.Write); int i = 1; StreamWriter w1 = new StreamWriter(f1); while (i < 100) { w1.Write(i + ", "); i++; } w1.Write(i); w1.Close(); FileStream f2 = new FileStream("d:\\numbers.txt", FileMode.Open, FileAccess.Read); StreamReader r1 = new StreamReader(f2); Console.WriteLine(r1.ReadToEnd()); r1.Close(); Console.ReadKey()
|
Александр
03 фев 2014 02:06
FileStream f1 = new FileStream("d:\\numbers.txt", FileMode.Create, FileAccess.ReadWrite); int i = 1; StreamWriter w1 = new StreamWriter(f1); while (i < 500) { w1.Write(i + ", "); i++; } w1.Write(i); w1.Close(); StreamReader r1 = new StreamReader(f1); Console.WriteLine(r1.ReadToEnd()); r1.Close(); Console.ReadKey();
говорит, что поток не был допущен к чтению поясните пожалуйста
|
Илья
30 янв 2014 18:34
Задача 2 string[] colours = { "red", "green", "black", "white", "blue" }; FileStream file = new FileStream("d:\\colours.txt", FileMode.Create); StreamWriter writer = new StreamWriter(file); for (int i = 0; i < colours.Length; i++) { writer.WriteLine(colours[i]); } writer.Close();
|
Илья
30 янв 2014 18:19
Задача 1 FileStream numbers = new FileStream("E:\\numbers.txt", FileMode.Create); StreamWriter writer = new StreamWriter(numbers); for (int i = 1; i <= 500; i++) { writer.WriteLine(i); } writer.Close();
|
Евгений
24 янв 2014 00:04
Народ подскажите пожал уста, не нашёл этого в уроке нужно чтоб скрипт копировал файлы из одной папки в другую, притом проверял файлы, если файлы одинаковые по размеру или ещё как то выводил предупреждение и не копировал, Имена файлов могут быть разными......
|
Максим
17 янв 2014 18:01
Татьяна --- Возможно это решает вашу проблему: string fileName = "d:\\fd.txt"; using (TextWriter tw = File.CreateText(fileName)) tw.WriteLine(String.Format("{0,6} {1,6} {2,6} {3,6}", x, y, z, PotEnergy(new Vector3D(x, y, z))));
|
Максим
17 янв 2014 17:57
Юрец --- Если бы еще переменные называли нормально, информативно, а не одиночными символами, тогда точно было бы красиво. Может и буду выкладывать больше задачек, правда если они вам так срочно нужны, найти в поисковике их займет пару минут...
|
Татьяна
17 янв 2014 12:58
Пожалуйста помогите избавиться от лишней работы! У меня в готовой программке постоянно нужно вводить имя файла и его расположение, вот что имеется: Console.Write("Введите имя файла "); string fileName = Console.ReadLine(); using (TextWriter tw = File.CreateText(fileName)) tw.WriteLine(String.Format("{0,6} {1,6} {2,6} {3,6}", x, y, z, PotEnergy(new Vector3D(x, y, z))));
Как мне задать один файл напр-р D:/fd.txt куда будут записываться данные после каждого запуска программы. Важно чтобы старые данные в файле не сохранялись, а менялись на новые после каждого запуска.
|
Юрец
17 янв 2014 01:11
Хотелось бы уточнить: в 3 задаче задано найти самую длинную строку, и в ней посчитать кол-во символов, так? Я вот такое склепал static void Main(string[] args) { List<string> g = new List<string>(); int max = 0;
List<int> dd = new List<int>(); FileStream f = new FileStream("D:\\Lang_ua.txt", FileMode.Open);
StreamReader r = new StreamReader(f); do g.Add(r.ReadLine()); while (r.EndOfStream == false);
foreach (string ii in g) dd.Add(ii.Length); foreach (int x in dd) { if (x > max) max = x; } Console.WriteLine(max); Console.ReadKey(); }
вроде бы красиво получилось )) п.с. Кстати, неплохо было бы выкладывать больше задачек, причем посложнее и в перемешку с разными уроками.
|
The Saint
10 янв 2014 05:37
ДЗ №2. Мой вариант:
string[] colours = { "red", "green", "black", "white", "blue" }; FileStream file = new FileStream("d:\\colours.txt", FileMode.Create); StreamWriter writer = new StreamWriter(file); for (int i = 0; i < colours.Length; i++) { writer.WriteLine(colours[i]); } writer.Close();
|
The Saint
10 янв 2014 05:02
ДЗ №1. Мой незатейливый вариант. Однако работает :)
static void Main(string[] args) { FileStream numbers = new FileStream("d:\\numbers.txt", FileMode.Create); StreamWriter writer = new StreamWriter(numbers); for (int i = 0; i <= 500; i++) { if (i<500) { writer.Write(i + ","); } else { writer.Write(i); } } writer.Close();
|
Алексей
09 янв 2014 16:16
//example #1 Directory.CreateDirectory("d:\\C#"); StreamWriter writer = new StreamWriter("d:\\C#\\new_file.txt"); Random r = new Random(); int[] array = new int[500]; for (int i = 0; i < array.Length; i++) { array[i] = r.Next(0,999); writer.Write(array[i]); if (i == 499) { writer.Write("."); writer.WriteLine(""); } else writer.Write(","); } //example #2 string[] str_array = {"red", "green", "black", "white", "blue"}; for (int i = 0; i < str_array.Length; i++) { writer.WriteLine(str_array[i]); } writer.Close(); //example #3 StreamReader reader = new StreamReader("d:\\C#\\pnt.txt"); string line=""; int lengthline = reader.ReadLine().Length, length; while (!reader.EndOfStream) { length = reader.ReadLine().Length; if (length > lengthline) { lengthline = length; line = reader.ReadLine(); } } Console.Write(line); Console.ReadKey(); reader.Close(); } }
|
Максим
08 янв 2014 17:52
palazhevich --- Спасибо, вас тоже с праздниками! И уже так сразу вы вернулись к программированию, здорово!)
|
palazhevich
07 янв 2014 23:51
Здравствуйте. С Новым годом и Рождеством!
В решение третьего задания я ещё добавил сравнение длинных строк (если их несколько) проверку относительно алфавита.
static void Main(string[] args) { Console.WriteLine("Будет открыт файл по адресу f:\\file\\colors.txt, и найдена его самая длинная строчка"); Console.WriteLine(); FileStream text = new FileStream("f:\\file\\colors.txt", FileMode.Open, FileAccess.Read); string[] rezult = File.ReadAllLines("f:\\file\\colors.txt"); foreach (string s in rezult) { Console.WriteLine(s); } string Max = rezult[0]; for (int i = 1; i < rezult.Length; i++) { int num = rezult[i].Length; if (num > Max.Length) { Max = rezult[i]; } } int c = Max.Length; for (int i = 0; i < rezult.Length; i++) if (rezult[i].Length == c && String.Compare(rezult[i], Max) > 0) { Max = rezult[i]; } Console.WriteLine(); Console.WriteLine("Самая длинная строка: " + Max + " Колличество знаков: " + c); text.Close(); Console.ReadKey(); }
|
oborin
03 янв 2014 10:23
всё разобрался
|
oborin
03 янв 2014 10:17
Почему сохраняет только 500? using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.IO;
namespace ConsoleApplication1 { class Program { static void Main(string[] args) { for (int and = 0; and <=500; and++) { Console.WriteLine(and); FileStream file1 = new FileStream("d:\\test.txt", FileMode.Create); //создаем файловый поток StreamWriter writer = new StreamWriter(file1); //создаем «потоковый писатель» и связываем его с файловым потоком writer.Write(and); //записываем в файл writer.Close(); //закрываем поток. Не закрыв поток, в файл ничего не запишется
} } } }
|
Максим
09 дек 2013 23:57
Рома --- Прочитайте "Урок 10. Обработка исключений в Си-шарп. Оператор try-catch", и тогда должно стать понятно, что значит "генерируется исключение"
|
Рома
08 дек 2013 15:13
народ, объясните, пожалуйста, поподробнее, что значит "генерируется исключение", и где это потом можно применить?
|
Инна
04 дек 2013 08:58
Задание 3: static void Main(string[] args) { FileStream test = new FileStream("d:\\license.txt", FileMode.Open); StreamReader reader = new StreamReader(test); string s = reader.ReadLine(); int max = s.Length; while (!reader.EndOfStream) { string s1 = reader.ReadLine(); int i = s1.Length; if (i > max) { max = i; } } Console.WriteLine("Максимальная длина строки: " + max); Console.ReadKey();
}
|
Максим
11 ноя 2013 17:55
123456 --- Вот так: FileStream file1 = new FileStream("d:\\1.txt", FileMode.Open); StreamReader reader = new StreamReader(file1); int i=0; while(!reader.EndOfStream && i < 5) { Console.WriteLine(reader.ReadLine()); i++; } Console.ReadKey();
|
123456
10 ноя 2013 18:25
Подскажите пожалуйста, как вывести на экран первых 5 строк файла?
|
biglapa
10 ноя 2013 10:22
static void Main(string[] args) { // Задаие 1 FileStream numbersstream = new FileStream("D:\\numbers.txt", FileMode.Create); StreamWriter numberswriter = new StreamWriter(numbersstream); int i = 1; do { numberswriter.WriteLine(i); i++; } while (i <= 500); numberswriter.Close(); // Задание 2 string[] colors = { "red", "green", "black", "white", "blue" }; FileStream colorsstream = new FileStream("D:\\colors.txt", FileMode.OpenOrCreate); StreamWriter colorswriter = new StreamWriter(colorsstream); for (i = 0; i < colors.Length; i++) { colorswriter.WriteLine(colors[i]); } colorswriter.Close(); }
|
Максим
23 окт 2013 13:13
Полина --- Например так: DirectoryInfo dir = new DirectoryInfo(@"D:\"); FileInfo[] txt_files = dir.GetFiles("*.txt", SearchOption.TopDirectoryOnly);
Это будет поиск только в конкретной папке, если нужно и во внутренных смотреть, меняем опцию поиска на AllDirectories.
PS. Я ответ на ваш вопрос изначально не знал, но гугл мне быстро дал ответ. Советую не забывать о нем)
|
Полина
23 окт 2013 08:42
Здравствуйте!!подскажите пожалуйста как осуществить поиск файлов только по заданному расширению
|
Максим
16 окт 2013 01:23
NikolayBelikov --- Как то вы тут намешали работу с файлами через класс File и через потоки, используйте что-то одно. Вот это может быть реализовано так: string path = "C:\\proba.txt"; StreamWriter writer = new StreamWriter(path); for (int i = 1; i < 501; i++) writer.Write(i + ", "); writer.Close(); StreamReader reader = new StreamReader(path); Console.WriteLine(reader.ReadToEnd()); reader.Close();
|
NikolayBelikov
15 окт 2013 12:28
Почему при использовании file.create появляется ошибка доступа?
static void Main(string[] args) { File.Create("C:\\proba\\proba.txt"); FileStream proba = new FileStream("C:\\proba\\proba.txt", FileMode.Open); //Процесс не может получить доступ к файлу "C:\proba\proba.txt", так как этот файл используется другим процессом. StreamWriter writer = new StreamWriter(proba); for (int i = 1; i < 501; i++) writer.Write(i + ", "); writer.Close(); StreamReader reader = new StreamReader(proba); Console.WriteLine(reader.ReadToEnd()); reader.Close(); Console.ReadKey(); }
|
Lili
08 окт 2013 14:38
спасибо большое! Работает ))
|
Максим
08 окт 2013 13:33
Lili --- Дело в том, что считав весь файл, указатель теперь находится в конце, а там, ясное дело, нечего больше считывать. Нужно переместить указатель на начало файла:
reader.BaseStream.Position = 0; // вставить это перед string max = reader.ReadLine();
|
Lili
07 окт 2013 20:39
здравствуйте подскажите, пожалуйста, в 3-ем задании если я сначала хочу вывести весь имеющийся текст на экран, как это сделать?
StreamReader reader = new StreamReader("C:\\users\\Лили\\desktop\\lilya.txt", Encoding.Default); // rabota s syshestvyyushim failom Console.WriteLine(reader.ReadToEnd());
Console.WriteLine();
string max = reader.ReadLine(); // pervona4alnoe max zna4enie zadaem 1-oi stroke
while (!reader.EndOfStream) { string str = reader.ReadLine(); if (str.Length > max.Length) max = str; } reader.Close(); Console.WriteLine(max); по такому принципу весь текст выводится на экран, но не выполняется остальной код...
|
Максим
07 сен 2013 16:22
Alex --- Создание нетекстового файла ничем не отличается от создания текстового, просто указываете необходимое расширение файла: File.Create("D:\\new_file.xml"); //так, или с использованием потоков
Разные файлы имеет разную структуру. Возможно, данные в файле записаны по-байтно, и для считывання и записи по-байтно мы можем использовать классы BinaryReader и BinaryWriter. Используя эти классы, мы можем считывать/записывать данные по байтам/символам (char)/строкам (string)/целым числам (int) и так далее.
|
Alex
05 сен 2013 13:49
Расскажите, а как создавать нетекстовые файлы? И как с ними работать?
|
hojiakbar
23 авг 2013 23:04
StreamReader reader = new StreamReader("D:\\text.txt"); string AllText = reader.ReadToEnd(); reader.Close(); string[] ArrayText = AllText.Split(null); string ElementOfArray = ""; for (int i = 0; i < ArrayText.Length; i++) { if (ArrayText[i].Length > ElementOfArray.Length) { ElementOfArray = ArrayText[i]; Console.WriteLine(ArrayText[i]+":"+ArrayText[i].Length); } }
Console.WriteLine(ElementOfArray+":Samaya dlinnaya slova v texte. Sostoit iz:"+ElementOfArray.Length+"bukv"); Console.ReadKey();
|
hojiakbar
23 авг 2013 21:58
string[] array = { "red", "green", "black", "white", "blue" }; StreamWriter writer = new StreamWriter("D:\\array.txt"); for(int i=0;i<array.Length;i++) { writer.WriteLine(array[i]); } writer.Close();
|
hojiakbar
23 авг 2013 21:46
FileStream file1 = new FileStream("D:\\numbers.txt", FileMode.Create, FileAccess.ReadWrite); StreamWriter writer = new StreamWriter(file1); for (int i = 1; i <= 500; i++) { writer.Write(i.ToString()+","); if (i == 500) writer.Write(i.ToString()+"."); } writer.Close();
|
hojiakbar
23 авг 2013 21:41
static void Main(string[] args) { FileStream file1 = new FileStream("D:\\numbers.txt", FileMode.Create, FileAccess.ReadWrite); StreamWriter writer = new StreamWriter(file1); for (int i = 1; i <= 500; i++) { writer.Write(i.ToString()+","); } writer.Close(); }
|
John
16 авг 2013 13:19
Admin --- Я стараюсь оставлять ход ко всему. При дальнейших редакциях кода отсутствие возможности выводить "хвосты", т.е. другие части может быть критичным. Это старая привычка.
|
Максим
15 авг 2013 18:19
John --- Работать то работает, но слишком много лишнего.
1. Cоздавать отдельно файловый поток для открытия файла на читание нет необходимости, достаточно этого: StreamReader reader = new StreamReader("d:\\file.txt");
2. Переменная lines не нужна. Метод ReadLine() возвращает значение, и это значение сравнивается с null, нет смысла перед этим записывать это значение в переменную:
while (reader.ReadLine() != null) // так нормально
3. Третий цикл, в котором находится номер строки, совсем не нужен, можно было ведь сделать это и в цикле выше:
int number = 0; for (int i = 0; i < count; i++) { array[i] = reader.ReadLine().Length; if (max < array[i]) { max = array[i]; number = i + 1; } }
Посмотрите ниже как сделал это же задание santyaga10 за один цикл, без всяких массивов
|
John
15 авг 2013 17:13
Задача 3. Часть 2. for (int i = 0; i < count; i++) // Цикл определения элементов массива. { array[i] = reader.ReadLine().Length; // Каждый элемент массива будет равен не строке, а ее длине. if (max < array[i]) // Условия для определения большей строки. { max = array[i]; // А вот и определение наибольшей строки! } } int number = 0; // Переменная, которая обозначает искомую (большую) строку. for (int i = 0; i < count; i++) // Цикл поиска НОМЕРА этой строки. (а не самой строки, как было ранее) { if (max == array[i]) // Находим нужную строку... { number = i + 1; // И записываем ее номер. Плюсуем еденицу, так как массив считает с нуля, а мы - с еденицы. } } Console.WriteLine("Всего " + count + " строк."); // Лирическое отступление. Console.WriteLine("Самая большая строка - " + number); // Та-дам! Console.ReadKey(); } Усе работает врекрасно.
|
John
15 авг 2013 17:12
Доброго времени суток, господа. Я, конечно, дико извиняюсь, что не подавал голосу раньше, но впредь буду выкладывать свои громоздкие чудовищные решения в несколько частей. Задача три. Часть 1. static void Main(string[] args) { FileStream text = new FileStream("C:\\users\\John\\Desktop\\text.txt", FileMode.Open); // Открываем поток. StreamReader reader = new StreamReader(text); // "считыватель" string lines; // Абстрактная хрень для считывателя. int count = 0; // Ограничитель для массива. while ((lines = reader.ReadLine()) != null) // Цикл будет считывать строки до тех пор, пока файл не кончится... { count++; // ... А в это время ограничитель будет плавно расти, отображая кол-во строк в документе. } reader.BaseStream.Position = 0; // Устанавливаем курсор на "нулевую" позицию. [С Т Ы Р Е Н О] (я хотел открывать новый поток -_-) int[] array = new int[count]; // Создаем массив. int max = array[0]; // Задаем число, которое будет равно самой большой строке.
|
Максим
10 авг 2013 21:38
santyaga10 --- Да, здесь все так, как я и ожидал, считывание по строкам. Только можно было убрать лишние строки и сделать так:
StreamReader reader = new StreamReader("d:\\1.txt"); string result = reader.ReadLine();
|
santyaga10
10 авг 2013 19:50
задача 3 Console.WriteLine("Будет открыт файл по адресу d:\\file.txt, и найдена его самая длинная строчка"); Console.ReadKey(); FileStream text=new FileStream("d:\\file.txt",FileMode.Open,FileAccess.Read) ; StreamReader reader = new StreamReader(text,Encoding.UTF8); string result; result = reader.ReadLine(); while (!reader.EndOfStream) {string line=reader.ReadLine(); if(result.Length<line.Length) result=line;} reader.Close(); Console.WriteLine("\n"+result); Console.ReadKey();
|
Максим
10 авг 2013 12:22
Сергей --- дз1: Лучше бы не было той запятой в конце файла
дз3: Нужно было вынести вывод результата за пределы цикла и записывать индекс самой длинной строки, а то получается, что результат выводится каждый раз, когда следующая строка больше предыдущей. И еще программа не выводит накакого результата, если самая длинная строка - первая
|
Сергей
10 авг 2013 11:54
Добрался таки до Уроков ))) Очередной мой вариант решения ДЗ //Задача 1 StreamWriter writr = new StreamWriter("C:\\numbers.txt"); for (int i = 1; i < 501; i++) { writr.Write(i+", "); } writr.Close();
//Задача 2
string[] colors = { "red", "green32", "black1", "white22", "blue" };
StreamWriter writeColors = new StreamWriter("C:\\Colors.txt"); for (int i = 0; i < colors.Length; i++) { writeColors.WriteLine(colors[i]); } writeColors.Close(); //Задача 3
StreamReader longLine = new StreamReader("C:\\Colors.txt");
string longLineObj = longLine.ReadToEnd();
string[] longLineArray = longLineObj.Split('\n');
int maxLine = longLineArray[0].Length; for (int i = 0; i < longLineArray.Length; i++) { if (longLineArray[i].Length > maxLine) { maxLine = longLineArray[i].Length; Console.WriteLine("Номер строки: " + i + ";\n \n " + "Длина строки:" + maxLine + "\n Текст строки:" + longLineArray[i]); } }
|
Максим
03 авг 2013 20:40
Коля --- Исправил. На днях добавлю на сайт нормальную систему оповещения об ошибках)
|
Коля
03 авг 2013 19:39
static void Main(string[] args){ Directory.CreateDirectory("d:\\new_folder"); //удаление пустой папки } Тут не удаление, а создание)))
|
Максим
16 июл 2013 21:21
Иван --- Исправлено, спасибо за помощь
|
Иван
16 июл 2013 14:44
в левой навигационной панели неверная ссылка на 11 урок. она перекидывает на 10
|