2010-02-19 3 views
0

Сохранение файла excel с символом chaines в csv, эти символы преобразуются в ??? (Вопросительные знаки) нежелательных символов.xls to csv с поддержкой символа цепей

Пожалуйста, дайте мне знать, если у вас есть какие-либо решения для этого. Я попытался сохранить его в текстовом формате Юникода, он работал нормально, но когда я попытался сохранить его как .csv, он не работает.

спасибо

ответ

1

У меня аналогичная проблема с японскими персонажами раньше. В то время Excel 2003 экспортировал только CSV в Latin1 (или, может быть, Windows 1352). Я в основном писал свой собственный макрос Excel для повторения строк и столбцов и создания строки в памяти того, как будет выглядеть файл CSV. Затем я использовал ADODB.Stream, чтобы сохранить его сам. Этот образец кода должен начать работу.

Dim csvdata As String 
Dim CRLF As String 
Dim objStream As Object 

CRLF = Chr(13) & Chr(10) 

csvdata = """key"",""value""" + CRLF 
csvdata = csvdata + """a"",""a""" + CRLF 
csvdata = csvdata + """aacute"",""á""" + CRLF 

Set objStream = CreateObject("ADODB.Stream") 
objStream.Open 
objStream.Position = 0 
objStream.Charset = "UTF-8" 
objStream.WriteText csvdata 
objStream.SaveToFile "test.csv", 2 ' adSaveCreateOverWrite 
objStream.Close 
0

Зачем нужен CSV-файл? Какая кодировка вам нужна? UTF-8? GBK? Какое программное обеспечение будет читать CSV-файл? Какую версию Excel вы используете?

Если вы знаете Python, вы можете использовать xlrd module, чтобы прочитать файл Excel, отформатировать данные, закодировать их и записать в CSV-файл или использовать его для обновления базы данных или что-то еще.