以下错误都出现在刚开始使用xlswrite时,代码来自《MATLAB编程与工程应用(第二版)》中文版。
>> ranmat = randi([1 100], 5, 3)
ranmat =
15 66 76
43 4 75
92 85 40
80 94 66
96 68 18
>> xlswrite('ranexcel',ranmat)
错误一:未找到文件或者权限被拒绝 In xlswrite (line 223) 错误使用 xlswrite (line 226) 错误: 服务器出现意外情况。
关键信息就是“未找到文件”。所以首先应该自己创建一个excel文件。
划掉的原因是因为我发现在改好了错误二的设置之后,是可以自动生成原来不存在的文件的!!!
错误二:Error using xlswrite (line 220) Error: 服务器出现意外情况。
这个报错的解决是在网上找到了2013版的。2016版操作基本相同,如下:
文件->选项->加载项,在最下方的管理选择“COM管理项”,点击转到。
去掉第一个也就是福昕阅读器。
完成后记得要重启MATLAB哈~
错误三:>> xlswrite('randxls.xls', ranmat)
错误使用 xlswrite (line 226)
文件 E:\MATLAB\randxls.xls 不可写。它可能被其他进程锁定。
在我重新打开MATLAB期待一次成功的写入时再次报错,如上。
原因是我使用了在犯错误二时创建的同一个excel文件,似乎是被锁定了。(前两次错误的xls文件都因为被占用删不掉,看看之后重启电脑能不能解决)
经检验关机后这些原来被占用的excel文件都可以删掉了~
于是重新创建了一个空白的新的excel终于成功啦!
不用手动在同一目录下创建!可以像处理其他文件那样自动生成原来不存在的文件。而且在创建时可以直接写“ xlswrite('random_try__', ranmat)”(重点在不需要带.xls的扩展名,不是因为词穷和区别其他文件加上的下划线)
在xlswrite和xlsread文件扩展名都默认为.xls,所以可以省略。
还可以加上.xlsx的后缀,也能正常创建~