我VS2015+QT开发了一段代码,其中有一段将表格中的数据导出到Excel文件,发现了一个诡异现象:生成的xlsx文件会根据目录中的jpg变化。
BUG
由于表格中有图形,我将其存成jpg文件写在工作目录中。点导出时将图片插入到Excel的表格中。jpg的文件名用“pic”+行号+“。jpg”。
在我的机器上用都没有问题(我用WPS,不确定有无影响)。客户的机器第二次导出时,第一次导出的文件中的jpg会随第二次生成的文件变化,删除文件夹中的jpg文件后表格又恢复了。
将xlsx和jpg分别放在不同目录下也不能解决问题。
解决方法
每行生成的文件名随机生成,并用QStringList记录下来,导出文件时从QStringList中取文件名。退出程序时删除所有JPG文件。