Файл.txt в файл.xlsx (600 строк и 40 столбцов)
У меня есть программа, которая объединяет три текстовых файла и объединяет их в один и сортирует их по алфавиту. Мне было интересно, как я мог бы поместить это в электронную таблицу Excel, не загружая и не используя исключительную библиотеку (если это возможно).
Вот мой код, который объединяет все три файла, если это помогает.
private void button1_Click(object sender, EventArgs e) // merge files button
{
System.IO.StreamWriter output = new System.IO.StreamWriter("OUTPUT.txt");
String[] parts = new String[1000];
String[] parts2 = new String[1000];
parts = File.ReadAllLines(textBox1.Text); //gets filepath from top textbox
parts2 = File.ReadAllLines(textBox2.Text); //gets filepath from middle textbox
String[] head = File.ReadAllLines(headingFileBox.Text); //header file array
//merging the two files onto one list, there is no need to merge the header file because no math is being
//computed on it
var list = new List<String>();
list.AddRange(parts);
list.AddRange(parts2);
//foreach loop to write the header file into the output file
foreach (string h in head)
{
output.WriteLine(h);
}
//prints 3 blank lines for spaces
output.WriteLine();
output.WriteLine();
output.WriteLine();
String[] partsComb = list.ToArray(); // string array that takes in the list
Array.Sort(partsComb);
//foreach loop to combine files and sort them by 1st letter
foreach (string s in partsComb)
{
partsComb.Equals(s);
output.WriteLine(s);
}
output.Close();
}
Любая помощь приветствуется.
3 ответа
Вы можете посмотреть на его создание в формате CSV (значения, разделенные запятыми). Excel естественным образом открывает его и загружает данные в строки и ячейки.
Базовый CSV выглядит так:
"Bob","Smith","12/1/2012"
"Jane","Doe","5/10/2004"
Некоторые вещи необязательны, например, заключать все в кавычки, но это необходимо, если ваши данные могут содержать разделитель.
Если у вас все в порядке с файлом с разделенными запятыми значениями (CSV), его достаточно легко сгенерировать с помощью манипуляции со строками, и он загрузится в Excel. Если вам нужен специальный формат Excel и все в порядке с XLSX, вы можете заполнить его некоторыми манипуляциями с XML и библиотекой ZIP.
Честное предупреждение, вы должны быть осторожны, избегая запятых и новых строк, если вы выбираете традиционный файл CSV. Есть библиотеки, которые также справляются с этим.
Возможно, вы захотите попробовать пакет Excel Plus: http://epplus.codeplex.com/ Это бесплатный, легкий и может создавать файлы xlsx.