|
Нужна софтина)) - Вопросы и ответы, обсуждения - Ваши вопросы по C# только в данном разделе |
17.05.2012, 21:48
|
#1
|
|
|
|
Сержант
|
Регистрация: 02.12.2011
Сообщений: 102
Популярность: 18248
Золото Zhyk.Ru: 25
Сказал(а) спасибо: 611
Поблагодарили 457 раз(а) в 285 сообщениях
|
Нужна софтина))
Ребят долго песенки петь не буду!
Вобщем в гугле не нашёл!
Мне нужно написать склейщик txt фаилов!
+ выбор разделителя!
Например у меня в одном txtА в другом Например разделитель ставим ":"
Нужно получить Помогите плиз) прогу пишу для
________________
offline user
|
|
|
17.05.2012, 23:33
|
#2
|
|
|
|
Разведчик
|
Регистрация: 30.07.2011
Сообщений: 19
Популярность: 115
Сказал(а) спасибо: 34
Поблагодарили 32 раз(а) в 30 сообщениях
|
Re: Нужна софтина))
Как вариант,
1. считать оба файла в списки или массивы;
2. добавить textBox для ввода разделителя
3. объединить их вместе и использовать (записать в файл например)
Код:
int f1_len = кол-во строк в файле*
int f2_len = ...
......
string[] file1 = new string[f1_len];
string[] file2 = new string[f2_len];
//textBox1.Text = ":";
int n;
if(f1_len > f2_len) { n = f1_len; } else { n = f2_len; }
string[] file_new = new string[n];
for (int i=0; i < n; i++) { file_new[i] = file1[i] + textBox1.Text + file2[i]; }
Надеюсь идея понятна
*как посчитать строки в файле не помню, была где-то тема или в гугле поищи.
________________
«Шрёдингер ходил по комнате в поисках котёнка, а тот сидел в коробке ни жив ни мертв.»
|
|
|
18.05.2012, 01:50
|
#3
|
|
|
|
Разведчик
|
Регистрация: 16.03.2012
Сообщений: 4
Популярность: 14
Сказал(а) спасибо: 0
Поблагодарили 2 раз(а) в 2 сообщениях
|
Re: Нужна софтина))
От нечего делать написал прогу для вставки разделителя. Она во вложении. Там исполняемый файл и исходный код.
Если интересует сам код, который осуществляет работу с файлами, то смотри в классе FileFolder в методе FoldFiles. На кучу другого кода, который там написан можно не обращать внимания, он нужен только для интерфейса. Если что-то будет не понятно, то спрашивай.
TextFileFolder.zip
|
|
|
18.05.2012, 13:56
|
#4
|
|
|
|
Сержант
|
Регистрация: 01.10.2011
Сообщений: 128
Популярность: 5723
Сказал(а) спасибо: 25
Поблагодарили 174 раз(а) в 105 сообщениях
|
Re: Нужна софтина))
mr*WOLF, я бы сделал так
Код:
/// <summary>
/// Метод склеивания
/// </summary>
/// <param name="file1">Первый файл</param>
/// <param name="file2">Второй файл</param>
/// <param name="output">Файл который будет на выходе</param>
/// <param name="separator">Разделитель</param>
private void DoIt(string file1, string file2, string output, char separator)
{
using (StreamReader sr1 = new StreamReader(file1))
using (StreamReader sr2 = new StreamReader(file2))
using (StreamWriter sw = new StreamWriter(output))
{
while (!sr1.EndOfStream)
{
while (!sr2.EndOfStream)
{
sw.WriteLine(string.Format("{0}{1}{2}",
sr1.ReadLine(),
separator,
sr2.ReadLine()));
}
}
}
}
Плюсы:
Не нагружает систему
Не хранит ненужный хлам в оперативке
________________
Talk is cheap. Show me the code
— Linus Torvalds
Последний раз редактировалось Yukikaze; 18.05.2012 в 14:28.
|
|
|
18.05.2012, 18:58
|
#5
|
|
|
|
Сержант
|
Регистрация: 02.12.2011
Сообщений: 102
Популярность: 18248
Золото Zhyk.Ru: 25
Сказал(а) спасибо: 611
Поблагодарили 457 раз(а) в 285 сообщениях
|
Re: Нужна софтина))
стукни в скайп пожалуйста) я что то не так делаю (
________________
offline user
|
|
|
18.05.2012, 21:22
|
#6
|
|
|
|
Сержант
|
Регистрация: 01.10.2011
Сообщений: 128
Популярность: 5723
Сказал(а) спасибо: 25
Поблагодарили 174 раз(а) в 105 сообщениях
|
Re: Нужна софтина))
mr*WOLF, что тут можно не так сделать, закинул в тело класса, а потом вызываешь
Код:
DoIt("путь_до_первого_файла", "путь_до_второго_файла", "имя нового файла", 'разделитель');
________________
Talk is cheap. Show me the code
— Linus Torvalds
|
|
|
18.05.2012, 21:28
|
#7
|
|
|
|
Старший сержант
|
Регистрация: 29.07.2011
Сообщений: 197
Популярность: 8989
Сказал(а) спасибо: 45
Поблагодарили 175 раз(а) в 139 сообщениях
|
Re: Нужна софтина))
Можно забыть что файлы бывают в папке в которую надо особый допуск =)
|
|
|
18.05.2012, 21:46
|
#8
|
|
|
|
Сержант
|
Регистрация: 01.10.2011
Сообщений: 128
Популярность: 5723
Сказал(а) спасибо: 25
Поблагодарили 174 раз(а) в 105 сообщениях
|
Re: Нужна софтина))
Sinyss, справедливо...
Вообще в случаях когда что-то не получается надо писать, что именно, или описывать ошибку если такая имеется
________________
Talk is cheap. Show me the code
— Linus Torvalds
|
|
|
19.05.2012, 12:45
|
#9
|
|
|
|
Сержант
|
Регистрация: 02.12.2011
Сообщений: 102
Популярность: 18248
Золото Zhyk.Ru: 25
Сказал(а) спасибо: 611
Поблагодарили 457 раз(а) в 285 сообщениях
|
Re: Нужна софтина))
________________
offline user
|
|
|
19.05.2012, 13:29
|
#10
|
|
|
|
Рыцарь-защитник
|
Регистрация: 28.08.2009
Сообщений: 603
Популярность: 19129
Золото Zhyk.Ru: 500
Сказал(а) спасибо: 84
Поблагодарили 602 раз(а) в 321 сообщениях
|
Re: Нужна софтина))
|
Цитата: |
|
|
|
|
|
|
|
|
|
легко говорить когда знаешь , а я даже не понял что на какую кнопку сувать , выложи исход)
|
|
|
|
|
|
Берем функцию
Код:
private void DoIt(string file1, string file2, string output, char separator)
{
using (StreamReader sr1 = new StreamReader(file1))
using (StreamReader sr2 = new StreamReader(file2))
using (StreamWriter sw = new StreamWriter(output))
{
while (!sr1.EndOfStream)
{
while (!sr2.EndOfStream)
{
sw.WriteLine(string.Format("{0}{1}{2}",
sr1.ReadLine(),
separator,
sr2.ReadLine()));
}
}
}
}
Кидаем её в наш проект в любое место кроме эвентов/других функций.
Дальше кидаем код на буттон:
Код:
//Пример
try
{DoIt("C:/File1.txt", "C:/File2.txt", "Finished.txt", ";");}
catch (Exception ex) {MessageBox.Show(string.Format("Ошибка: {0}",ex.Message),"Error");}
|
|
|
19.05.2012, 14:41
|
#11
|
|
|
|
Сержант
|
Регистрация: 01.10.2011
Сообщений: 128
Популярность: 5723
Сказал(а) спасибо: 25
Поблагодарили 174 раз(а) в 105 сообщениях
|
Re: Нужна софтина))
Да как же вы умудряетесь программы писать, не зная основ? Т_Т
offtop Господи, научи их хотя-бы пользоваться методами, я уже не прошу обучить их ООП
________________
Talk is cheap. Show me the code
— Linus Torvalds
|
|
|
Ваши права в разделе
|
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения
HTML код Выкл.
|
|
|
Похожие темы
|
Тема |
Автор |
Раздел |
Ответов |
Последнее сообщение |
[Помогите!] Ксс нужна
|
H0llyWood |
Общение и обсуждение Counter-Strike |
3 |
28.04.2012 15:20 |
[Помогите!] Мне нужна ава.
|
Urma |
Наше творчество |
2 |
28.12.2011 08:45 |
[Помогите!] Нужна помощь! Нужна аватарка!
|
Flapes |
Треп |
40 |
28.12.2009 20:07 |
Заявление об ответственности / Список мошенников
Часовой пояс GMT +4, время: 07:27.
|
|