我需要在Openpyxl中设置样式的建议.
我看到可以设置单元格的NumberFormat,但我还需要设置字体颜色和属性(粗体等).有一个style.py类,但似乎我无法设置单元格的样式属性,我真的不想开始修改openpyxl源代码.
有没有人找到解决方案?
在这篇文章中有一个Python示例从csv转换为xls.
但是,我的文件有超过65536行,所以xls不起作用.如果我将文件命名为xlsx,它并没有什么区别.是否有Python包转换为xlsx?
我需要自动适应大(30k +行)xlsx文件中的所有行.
以下代码通过apache poi适用于小文件,但适用于大文件OutOfMemoryError
:
Workbook workbook = WorkbookFactory.create(inputStream);
Sheet sheet = workbook.getSheetAt(0);
for (Row row : sheet) {
row.setHeight((short) -1);
}
workbook.write(outputStream);
Run Code Online (Sandbox Code Playgroud)
更新:不幸的是,增加堆大小不是一个选项 - OutOfMemoryError
出现在-Xmx1024m
和30k行不是一个上限.
Microsoft Excel的".xlsx"文件是zip文件,每个文件都包含一组文件.
有人可以提供一个链接,简明地描述嵌入.xml
文件的完整结构/语法/标记/格式(标题不太有趣)?
例如,很难找到什么网上的解释c
,t
以及s
元素表示.
数据框是可见的,没有任何错误.但是当使用包XLSX的write.xlsx函数打印相同时,它会给出错误.
Error in .jcall(cell, "V", "setCellValue", value) :
method setCellValue with signature ([D)V not found.
Run Code Online (Sandbox Code Playgroud)
data.frame的输入看起来像:
Timestamp qs pqs logqs es p_imp dep r_dep agg_rtn
(time) (dbl) (dbl) (dbl) (dbl) (dbl) (dbl) (dbl) (dbl)
1 2015-05-04 09:29:59 0.05788732 0.0007478696 0.0007478545 0.09633803 -0.0446830986 3533.518 274079.9 -0.0006432937
2 2015-05-04 10:00:00 0.04948394 0.0006362707 0.0006362707 0.07586009 0.0088016055 2416.431 187953.1 0.0000000000
3 2015-05-04 10:30:00 0.05554795 0.0007142532 0.0007142532 0.06417808 -0.0002739726 3245.574 252422.0 0.0000000000
4 2015-05-04 10:59:59 0.04863014 0.0006194244 0.0006194244 0.08434442 0.0024951076 3563.401 279503.9 0.0000000000
5 2015-05-04 …
Run Code Online (Sandbox Code Playgroud) Chrome 最近的更新已开始阻止来自我们网站的 XLSX 下载。
我已经阅读了 Chrome 的文档和指南,了解它们如何确定某些东西是否具有潜在危害,但没有提及如何解决除与他们联系之外的问题。我们的文件和我们的网站符合它们列出的所有准则。他们的大部分文档都基于可执行下载,因此不清楚这些信息如何影响简单的文件下载。
站点和文件使用 HTTPS 从同一主机提供。下载由链接到提供文件的 API 的锚标记驱动。
其他为相同数据生成的 CSV 文件或 PDF 文件提供服务的类似 API 不受影响。
我还修改了我们的文件生成以输出 XLS 文件而不是 XLSX,但这些文件也被阻止了。
以下是响应的标题,据我所知,有关处置或内容类型的所有内容都是正确的,因此我没有看到 chrome 使用这些标题来阻止文件。
Cache-Control: must-revalidate, private
Connection: keep-alive
Content-disposition: attachment; filename="test-file.xlsx"
Content-Type: application/xlsx
Date: Fri, 17 Jul 2020 16:04:41 GMT
Expires: -1
Server: nginx
transfer-encoding: chunked
X-DNS-Prefetch-Control: off
X-Frame-Options: SAMEORIGIN
Run Code Online (Sandbox Code Playgroud)
我还验证了这些文件实际上并不危险,它们包含简单的 excel 数据并且没有任何奇怪的东西被注入或受到损害。
我们还测试了各种下载方法,直接锚链接,表单帖子,blob 等。它总是被阻止。
是否有特定的请求/响应标头或下载方法或我缺少的标志会阻止 chrome 阻止文件?
更新
我已确认此问题影响了 83.x 版本的 chrome 以及最新版本 84.0.4147.89
感谢@Alex,我们已确认 Linux 或 Windows 版本的 Chrome 上不存在此问题。仅限 OSX。
该问题在今天早些时候消失了 20-30 分钟,然后又出现了。
用户报告该问题一直存在于 …
我正在使用oleread来读取上传的xls文件.但我无法读取以excel-2007格式保存的xlsx文件.有人可以帮助我如何在PHP中读取xlsx文件.
我有一些*.xls(excel 2003)文件,我想将这些文件转换为xlsx(excel 2007).
我使用uno python包,当我保存文件时,我可以设置过滤器名称:MS Excel 97但是没有过滤器名称,如'MS Excel 2007',
请帮帮我,如何设置过滤器名称将xls转换为xlsx?
我意识到这个问题有点令人困惑,但我不知道怎么说它.无论如何,这是原始代码:
private void readFile(String excelFileName) throws FileNotFoundException, IOException {
XSSFWorkbook workbook = new XSSFWorkbook(new FileInputStream(excelFileName));
if (workbook.getNumberOfSheets() > 1){
System.out.println("Please make sure there is only one sheet in the excel workbook.");
}
XSSFSheet sheet = workbook.getSheetAt(0);
int numOfPhysRows = sheet.getPhysicalNumberOfRows();
XSSFRow row;
XSSFCell num;
for(int y = 1;y < numOfPhysRows;y++){ //start at the 2nd row since 1st should be category names
row = sheet.getRow(y);
poNum = row.getCell(1);
item = new Item(Integer.parseInt(poNum.getStringCellValue());
itemList.add(item);
y++;
}
}
private int poiConvertFromStringtoInt(XSSFCell cell){
int …
Run Code Online (Sandbox Code Playgroud)