我已阅读以下有关通过 Google Docs 将 UTF-8 编码(希伯来语)XLS 转换为 CSV 的建议,并且它有效。当我使用 UTF8 编码在 Sublime2 中打开 CSV 时,希伯来语显示正确。但是,当我尝试使用 SQLyog 将数据导入我的数据库时,在确保我的目标表和导入定义都设置为 UTF8 之后,我得到了乱码,比如:×ž×“×¨×©×•× ª 我哪里做错了?
4 回答
从 excel 导出到 csv 的最佳方法是:
- 打开excel文件,点击“另存为...”
- 插入名称,然后在“另存为文件类型”中选择“CSV(逗号分隔)”
然后,单击“工具”并选择“Web 选项”
转到“编码”,在“将此文档另存为”选项下选择“Unicode (UTF-8)”。
利斯托!我无法在正确的问题中留下答案:(
找到原始帖子> eHow(西班牙语)
这部分图片。
- 在 Microsoft Excel 中,打开 *.xlsx 文件。
- 选择菜单 | 另存为。
- 为您的文件输入任何名称。
- 在“另存为类型”下,选择 Unicode 文本。
- 单击保存。
- 在 Microsoft 记事本中打开您保存的文件。
- 用逗号 (",") 替换所有制表符。选择一个制表符(选择并复制两个列标题之间的空格) 打开“查找和替换”窗口(按 Ctrl+H)并用逗号替换所有制表符。
- 单击另存为。
- 为文件命名,并将编码:更改为 UTF-8。
- 将文件扩展名从“ .txt”更改为“ .csv”。
- 单击保存。
- 在 Excel 中打开 .csv 文件以查看您的数据。
来源:https ://help.salesforce.com/articleView?id=000003837&type=1
出于开发目的,我需要定期更改一个Excel
文件并生成一个“CSV”文件,该文件是一个文本文件,其中列的元素由TAB
字符分隔。
为了方便我的工作,我创建了以下 VBS 脚本
'***********************************************************************
'* file: SaveAs.CSV.bat
'***********************************************************************
sInputFile = Wscript.Arguments(0)
WScript.Echo "Excel input file: " & sInputFile
Set ex = CreateObject("Excel.Application")
Set wb = ex.Workbooks.Open(sInputFile)
ex.Application.DisplayAlerts = False
'https://docs.microsoft.com/en-us/office/vba/api/office.msoencoding
wb.WebOptions.Encoding = 28591
ex.Application.DefaultWebOptions.Encoding = 28591
'https://docs.microsoft.com/en-us/office/vba/api/excel.xlfileformat
sOutputFile = Replace(sInputFile & "*",".xlsx*",".txt")
ex.Worksheets(1).SaveAs sOutputFile, 20
ex.ActiveWorkbook.Close
ex.Application.Quit
WScript.Echo "CSV file has been created."
WScript.Quit
要开始为特定 XLSX 文件创建“CSV”文件,我创建了以下 BAT 文件
cscript SaveAs.CSV.vbs "D:\Documents\+Informatique\Application\@Visual Basic.NET\DrawPlanUnifilaire\Plan-Unifilaire.xlsx"
pause
因此,我只单击 BAT 文件,然后从 XLSX 文件的第一张表中自动生成一个 TXT 制表符分隔文件。
XLSX 文件 (éèàüäù) 中包含的 UNICODE UTF8 字符已正确转换为 Windows ANSI 字符。
我想出的解决方案是使用 RegExp 跳过从 CSV 到 SQL 的转换。就像是:
查找: "(.*)","(.*)","(.*)","(.*)","(.*)","(.*)","(.*)","(.*)","(.*)","(.*)"
替换:INSERT INTO aminadav VALUES (NULL,$1,"$2",$3,"$4","$5","$6","$7","$8","$9","$10");