Я пытаюсь импортировать текстовый файл в Excel (2007). Файл был экспортирован из текстового поля C# и содержит разрывы строк. Хотя, когда я импортирую его (с помощью мастера импорта текста, который поставляется с Excel), разрывы строк полностью исчезают. Я бы предпочел не писать файл VBA и помещать его в файл excel для запуска, а вместо этого изменить его с помощью аккуратного метода на С#, прежде чем он превратит данные текстового поля в текстовый файл. Возможно ли это каким-либо образом?
Импорт текстовых файлов в Excel приводит к исчезновению разрывов строк
Ответы (3)
Я понял это. Если вы заключаете текст в кавычки, любые встроенные переводы строк (ASCII 010) будут импортированы в Excel как встроенные переводы строк. Другими словами, эти переводы строк не приведут к разбиению текста по строкам Excel.
Попытайся. Создайте два файла в Notepad.exe. В первом завершите первую строку, нажав Alt-0010:
Тестовая строка 1 завершается с помощью alt-0010
Тестовая строка 2
Во втором начинайте строки с " и заканчивайте с ". В первой строке вставьте Alt-0010 непосредственно перед ":
"Тестовая строка 1 завершается с помощью alt-0010 перед цитатой"
"Тестовая строка 2"
Теперь импортируйте оба в Excel и посмотрите разницу.
Дополнительную информацию см. в IETF RFC 4180.
В Excel разрыв строки в ячейке кодируется как код ascii 10 (т.е. \n) (определяется с помощью удобного использования средства записи макросов и проверки сгенерированного VBA). Я думаю, что «исчезновение» новых строк, вероятно, является результатом того, что вы C# испускаете \n\r, поэтому вы можете попробовать выполнить глобальную замену «\r» на «» в своем коде C# перед его выводом.
Спасибо за помощь! Я попытался начать текст с \" и закончить с \", но когда я иду в Excel, я получаю каждую строку в отдельной ячейке, и мой план состоял в том, чтобы получить весь текст в одной ячейке excel.