powered by simpleCommunicator - 2.0.50     © 2025 Programmizd 02
Форумы / WinForms, .Net Framework [игнор отключен] [закрыт для гостей] / Копирование одного txt файла в другой
11 сообщений из 11, страница 1 из 1
Копирование одного txt файла в другой
    #39881076
lorner
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Вопрос от новичка. Необходимо скопировать один файл txt в другой. Пишу такой код:

Код: c#
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
40.
41.
42.
43.
using System;
using System.IO;

class HarryPotter
{

	public static void Main()
	{
		string line;
		string readPath=@"C:\MyCS\Harry Potter.txt";
		string writePath = @"C:\MyCS\new Harry Potter.txt";

		try 
		{

			StreamReader sr = new StreamReader(readPath, System.Text.Encoding.Default);
			StreamWriter sw = new StreamWriter(writePath, false, System.Text.Encoding.Default);

			line = sr.ReadLine();

			while (line != null) 
			{
				sw.WriteLine(line);
				line = sr.ReadLine();
			}

			sr.Close();
			sw.Close();

			Console.WriteLine("Done! Press Enter...");
			Console.ReadLine();
		}
		catch(Exception e)
		{
			Console.WriteLine("Exception: " + e.Message);
		}
		finally
		{
			Console.WriteLine("Executing finally block...");
		}

	}
}



Но в конце нового файла "new Harry Potter.txt" добавляется лишняя пустая строка и файлы различаются по размеру. Почему?
...
Рейтинг: 0 / 0
Копирование одного txt файла в другой
    #39881081
Roman Mejtes
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Stream.CopyTo
...
Рейтинг: 0 / 0
Копирование одного txt файла в другой
    #39881089
lorner
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Roman MejtesStream.CopyTo

Но что не так в моей реализации? Это только первый этап, в дальнейшем мне нужно будет работать со строками из первого файла, обрабатывать их и записывать их во второй...
...
Рейтинг: 0 / 0
Копирование одного txt файла в другой
    #39881116
fkthat
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Это потому что WriteLine добавляет в конце строки "\r\n". А тебе, просто, к последней строке добавлять его не надо.
...
Рейтинг: 0 / 0
Копирование одного txt файла в другой
    #39881118
lorner
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Если вместо цикла while пишу:
Код: c#
1.
2.
			line = sr.ReadToEnd();
			sw.WriteLine(line);


результат такой же
...
Рейтинг: 0 / 0
Копирование одного txt файла в другой
    #39881120
lorner
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
fkthatЭто потому что WriteLine добавляет в конце строки "\r\n". А тебе, просто, к последней строке добавлять его не надо.

Спасибо )!!
...
Рейтинг: 0 / 0
Копирование одного txt файла в другой
    #39881123
fkthat
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
lornerЕсли вместо цикла while пишу:
Код: c#
1.
2.
			line = sr.ReadToEnd();
			sw.WriteLine(line);


результат такой же
Код: c#
1.
2.
line = sr.ReadToEnd();
sw.Write(line); // просто "Write" без "Line"
...
Рейтинг: 0 / 0
Копирование одного txt файла в другой
    #39881154
Roman Mejtes
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
изначально автор юзал ReadLine, который в свою очередь так не возвращает в конце считанной строке перенос
...
Рейтинг: 0 / 0
Копирование одного txt файла в другой
    #39881164
fkthat
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Roman Mejtesизначально автор юзал ReadLine, который в свою очередь так не возвращает в конце считанной строке перенос
Допустим исходный текст: "foo\r\nbar\r\nbaz".
Прочитается: "foo", "bar", "baz".
А запишется: "foo\r\nbar\r\nbaz\r\n".
Разница видна?
...
Рейтинг: 0 / 0
Копирование одного txt файла в другой
    #39881169
Фотография Cat2
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Модератор форума
Если простое копирование, то зачем столько телодвижение?

File.Copy(source, target)
...
Рейтинг: 0 / 0
Копирование одного txt файла в другой
    #39881171
fkthat
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Cat2Если простое копирование, то зачем столько телодвижение?

File.Copy(source, target)
Ну, как бы, ТС уже пояснил, что там, кроме просто копирования, еще будет какая-то построчная обработка.
...
Рейтинг: 0 / 0
11 сообщений из 11, страница 1 из 1
Форумы / WinForms, .Net Framework [игнор отключен] [закрыт для гостей] / Копирование одного txt файла в другой
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]