我试图做一个简单的Android应用程序,基本上导入一个CSV并将其插入到自定义数组列表。 到目前为止,当我没有更新CSV文件内容时,我能够读取一个CSV文件。我发现,当我用Excel更新CSV文件时,它改变了CSV文件的合成。 这里是我阅读csv文件的代码: selectedFile = new File(data.getStringExtra(FilePicker.EXTRA_FILE_PATH)); ArrayList<Expense> objList= new ArrayList<>(); String file=selectedFile.getPath(); FileInputStream fileInputStream = null; try { fileInputStream = new FileInputStream(new File(selectedFile.getPath())); } catch (FileNotFoundException e) { e.printStackTrace(); } BufferedReader reader = null; reader = new BufferedReader(new InputStreamReader(fileInputStream, Charset.forName("UTF-8"))); String line = ""; StringTokenizer st = null; try { while ((line = reader.readLine()) […]
我试图把一些csv文件的数据存在excel文件。 我存在的excel文件包含图像和xlrd无法获取图像。 我尝试使用xlsxwriter,但无法附加到现有的xslx。 我发现的唯一解决scheme是使用openpyxl。 import openpyxl xfile = openpyxl.load_workbook('my_exist_file') sheet = xfile.get_sheet_by_name('Sheet1') with open("my_csv", 'rb') as f: reader = csv.reader(f) for r, row in enumerate(reader): for c, col in enumerate(row): -here is my problem- 我怎样才能将csv数据(即表格)写入存在的xslx中的特定位置? 我希望我的表格将在K2单元格开始。 谢谢!
我得到了一个使用Application.Ontime每30秒运行一次的macros。 每次迭代都会创build一个包含8列和50到100行的新csv文件。 Application.Ontime通常运行时间从上午8点到下午5点。 问题是,有时在白天,macros只是停止在csv文件中存储数据,但仍然创buildCSV文件。 因此,它仍然创buildcsv文件,但没有任何数据。 编辑: 创build的文件包含标题(StdTenorArray(0)) variablesStdXXXXXX在另一个macros(button)中定义,是一个全局variables 这里是代码: Sub RunOnTime() Application.CutCopyMode = False Set ThisWkb = ThisWorkbook dTime = Now + TimeSerial(0, 0, 30) Application.OnTime dTime, "RunOnTime" Call csvFileArray Set ThisWkb = Nothing End Sub 上面的代码调用这个macros: Sub csvFileArray() Dim StdTenorArray(), ArkArr(5) As Variant Dim FileName As String Dim StdTenorCnt, h, j As Long Set […]
如果文件具有除.csv以外的其他扩展名,则csv文件中的列将一起分组到A列中 我必须使用“数据”>“文本到列”并将分隔符从“\ t”更改为“,”以正确格式化内容。 我可以告诉Excel说,把.ext作为一个.csv文件?
我正在使用此代码将数据从csv文件复制到访问表: str = "insert into tablex (field1, field2, field3) select field1, field2, field3 from [Text; FMT=Delimited; HDR=YES; CharacterSet=437; DATABASE=" & ThisWorkbook.Path & "\data-for-tool-refresh].csvtable.csv;" 但是,数据粘贴后,某些列被截断,即十进制值被删除。 我已经检查了数据types的访问表,它被设置为“双”,但仍然值被截断例如:15.12345成为15 有人可以请build议我一个方法来获取这些值进入访问不被截断
我有一个多级列表,例如下面: <ul> <li>Test column 01 <ul> <li>Test column 02 <ul> <li>Test column 03 <ul> <li>Test column 04 <ul> <li>Test column 05</li> <li>Test column 05</li> <li>Test column 05</li> </ul> </li> </ul> </li> </ul> </li> </ul> </li> </ul> 我想运行一些php代码,将列表输出为csv文件,格式如下: Test column 01 ,Test column 02 ,,Test column 03 ,,,Test column 04 ,,,,Test column 05 ,,,,Test column 05 […]
我有数百个XLSX文件,它们都有包含长数字帐号的列。 我需要自动将所有这些文件转换为CSV。 这对于像ssconvert这样的工具是微不足道的。 但是,由于Excel和Libreoffice中的错误 function ,长数字字段将使用科学记数法显示,如果导出为CSV,此格式编号(不是基础数据)将被保留。 这意味着任何自动转换为CSV将截断帐户号码,因为值1240800388917将被写入CSV为1.2408E + 12或1240800000000,从而导致数据损坏。 这很容易通过手动打开Excel文件并将这些列设置为“文本”格式来解决。 然而,对于数百个文件来说,这样做有点繁琐,特别是因为这些文件中有许多都有奇怪的macros和格式,使得LibreOffice需要花费几分钟来打开每一个文件(另一个原因是我想将它们全部转换为CSV第一名)。 使用Python自动打开每个文件并将整个列的格式更改为“文本”最简单的方法是什么? 我看到很多关于如何读取XLS / XLSX文件的Python示例,并且在某些情况下编写它们,但是我可以在操作列的默认格式时find一些指南。
是否可以将工作表中的每一列保存为自己的CSV文件? 这是我想要完成的主要事情,尽pipe有更多的细节。 编辑:代码几乎可以工作,除了某些原因,似乎只有两个〜30工作表循环。 它输出从125-135 csv文件(不知道为什么它变化?),但它应该输出接近〜1000 csv文件的任何地方。 任何想法为什么代码不循环所有工作表? (代码在底部+更新的工作簿) 我发现的所有其他解决scheme涉及Python或其他脚本语言,我找不到任何具体的自动从Excel工作表中提取一列,并保存为一个单独的CSV。 目标: (在所有的工作表中,除“AA”和“Word Frequency”外) 将每列(从E列开始)保存为自己的CSV文件 目的: 创build单个数据CSV文件供其他程序进一步处理。 (这个程序需要这样组织的数据) 条件/限制: 1.每个工作表的列数会有所不同。 第一列将始终是E列 2.为每个CSV(1.csv,2.csv,3.csv …。9999.csv)编号,并保存在excel文件的工作文件夹中。 迭代数字(+1),所以不会覆盖其他CSV 3.格式化新的CSV文件,使第一行(标题)保持不变,其余单元(标题下面)用引号括起来,并粘贴到第二列的第一个单元格中 资源: 链接到工作表 链接到更新的工作簿 链接到3.csv (样本输出CSV) 视觉例子: 查看工作表数据的组织结构 我想如何保存CSV文件(数字迭代,所以其他程序将很容易加载所有的CSV文件与循环) 每个CSV文件的内容将如何显示的示例 – (单元格A1是“标题”值,单元格B1是所有关键字(位于主Excel表单中的标题下面)集合在一个单元格中,由引号“”) 代码几乎可以工作,但是除了“AA”和“Word Frequency”以外,只能循环使用2个工作表,而不是所有工作表: 我正在使用的最新工作簿 Option Explicit Public counter As Integer Sub Create_CSVs_AllSheets() Dim sht 'just a tmp var counter = 1 'this […]
首先是一个小背景:我需要一个脚本,在我select的目录中取得n个 CSV文件,并将其个别数据复制并粘贴到一个带有n个选项卡的“主”Excel工作簿文件中。 我也需要脚本来自动命名标签有用的东西。 我Frankenstein的一个脚本一起使用macros观录制,我在这里find的片断和良好的谷歌search结合使用谷歌search。 它运行时没有太多的错误; 然而,在这个过程结束的时候(如果有10个以上的CSV文件),它会变慢一点。 我已经尝试了几个不同的版本,确保剪贴板被清除,被复制的当前文件被closures,抑制主文件的打开和closuresanimation等等。到目前为止,成功的唯一的东西是(什么我认为是有效的)清除剪贴板。 我承认这是我第一次进入Visual Basic,我不是一个专业程序员,所以代码可能无法正确处理内存。 我的问题是:你能find一个(或多个)正在减慢代码的部分吗? 或至less提供一个可行的解释,为什么会发生? 一般来说,我的笔记本电脑是没有懒散的。 这是一个惠普EliteBook i5处理器和8GB的RAM,所以我无法想象这是一个资源问题。 我已经清理了代码和任何对个人目录的引用,并将其公布在下面。 预先感谢您的帮助。 Sub MultiCSV_to_Tabs() Dim vaFiles As Variant Dim i As Long Dim wbkToCopy As Workbook Dim wbkToPaste As Workbook vaFiles = Application.GetOpenFilename("CSV Files (*.csv), *.csv", _ Title:="Select files", MultiSelect:=True) 'User_Created_File = "PLACE YOUR DIRECTORY AND FILE NAME IN BETWEEN THESE […]
我有一个包含10.000行的csv文件。 2.000行的值为“EXPL_1”。 3.000行的值为“EXPL_2”。 2.500行的值为“EXPL_3”。 1.500行的值为“EXPL_4”。 2.000行的值为“EXPL_5”。 我正在寻找一个function,将交替混合(重新sorting)的值,并将继续混合,直到完成。 所以最终的结果会是这样的: EXPL_1, EXPL_2, EXPL_3, EXPL_4, EXPL_5, EXPL_1, EXPL_2, EXPL_3, EXPL_4, EXPL_5, ………. (x times repeat) EXPL_1, EXPL_2, EXPL_3, EXPL_5, (*EXPL_4 values finished but continue to alternately mix the rest) *值是按名称sorting的(第一个是EXPL_1,第二个是EXPL_2等)*也许将来会出现更多的值。 *我知道列表中有多less个值。