excel部分内容有问题xml的修复
发布日期:2021-10-16 07:12:04 浏览次数:20 分类:技术文章

本文共 2000 字,大约阅读时间需要 6 分钟。

打开111.xlsx这个文件时,提示:部分内容有问题。是否让我们尽量尝试恢复?



修复后提示:

被替换的部件: 有 XML 错误的 /xl/worksheets/sheet3.xml。 非法的名称字符。 行 2,列 6210966。

打开文件后,发现sheet3这个表变成空白!数据丢失!

分析:Excel的修复估计没用,它会把整个第二行全部删掉,但是,实际上整个Sheet1的数据不论多少,也就是算一行XML的。所以,它如果移除了第二行,看到的就是空白了。

原理:excel文件实际是一个压缩文件包,压缩包里文件为:



 操作:首先复制一份该文件,并将扩展名“xlsx”改成“zip”,可用CMD命令将111.xlsx更名为111.zip或111.rar。

 在xl文件夹里找到被替换的部件: 有 XML 错误的 /xl/worksheets/sheet3.xml。 非法的名称字符。 行 2,列 6210966。解压到指定文件夹(如:C盘根目录),用浏览器或记事本打开。找到sheet3.xml提示的地方,可能是部分语法关键字丢失造成的,找到并填写完整一般可以找回数据。

是配对存在的,可以搜索关键字的数量,经比对相等才可。

但此例非常特殊,提示:

C:\111.zip: 文件 C:\sheet3.xml 里出现校验和错误。该文件已损坏。无法将此文件解压,造成无法修改这个文件。数据无法找回。

首先要做的应是如何恢复这个压缩文件!!!

RAR软件中的“保留损坏文件”设置:右键点击要解压的文件,选择“解压文件”,弹出窗口中左下方有选项“保留损坏的文件”打勾即可。

办法二:釜底抽薪法!其原理就是让RAR压缩包内损坏的文件解压缩出来,不理会WinRAR的警告,能解压多少就解压多少。解压缩软件还是用WinRAR,不过要做小小的设置,在右键点击解压缩文件后跳出的窗口里,把“保留损坏的文件”复选框选中,点击确定开始解压缩。不要理会解压缩出错的信息,解压缩结束之后你会发现损坏的文件被解压出来了。经过这样解压出来的损坏文件能正常使用的几率还是非常高的。 
 【我是用这个解决我问题的…没有弹出出错信息,直接就解压好了,没有问题…。】

办法三:打开压缩包(不是解压,而是用WinRAR打开),选中你要解压缩的文件,单击鼠标右键,在弹出的菜单里选择“无需确认直接解压缩”,快捷键是“ALT+W”。用此方法,不管是好的压缩包还是坏的压缩包,统统畅行无阻,成功率100%!

【这个我没试过…因为第二种就成功了。上面两种都不行的试试这种吧。】

 

解压缩成功后,浏览器打开sheet3.xml 。

This page contains the following errors:
error on line 2 at column 6210966: StartTag: invalid element name
Below is a rendering of the page up to the first error.

本页含有如下错误:错误位置为第2行第 6210966列:标签:XML元素名称无效(非法的名称字符。) 。
下面是在第一个错误出现之前可以显现出的页面。
(说明此网页文件有错误,不能全部显示)

参考:什么是 XML 元素?
XML 元素指的是从开始标签(且包括开始标签)直到结束标签(且包括结束标签)的部分。
XML 命名规则
XML 元素必须遵循以下命名规则:
名称可以包含字母、数字以及其他的字符
名称不能以数字或者标点符号开始
名称不能以字母 xml(或者 XML、Xml 等等)开始
名称不能包含空格
可使用任何名称,没有保留的字词。

 

可以在可扩展标记语言文件的内容包括几乎所有的万国码Unicode字符,元素和属性的名称也可以由非ascii字符组成;
标签由包围在一个小于号(<)和一个大于号(>)之间的文本组成,例如<标记>;
起始标签(starttag)表示一个特定区域的开始,例如<起始>;
结束标签(end tag)定义了一个区域的结束,除了在小于号之后紧跟着一个斜线(/)外,和起始标签基本一样,例如</结束>;

 

见下图:



用记事本打开。



发现大量元素开始标签后有空格,或元素名称以数字开头,即出现了大量非法的元素名称。


由于数据差错量较大,修复较为困难,暂且放弃吧。

用EXCEL打开

 



用EXCEL打开——作为XML表



 

 

用EXCEL打开——作为只读EXCEL工作簿



 

 

 

关于XML学习:

另外,必须针对打开excel文件时的错误提示,对相应出错文件时行修改,切不可胶柱鼓瑟式的根据网上的解决办法,不管是哪个文件出问题,对“sharedStrings.xml”这个文件修改。(只有提示已删除的部件: 有 XML 错误的 /xl/sharedStrings.xml。才有效!)

参考文件:



转载地址:https://blog.csdn.net/sjpljr/article/details/67638796 如侵犯您的版权,请留言回复原文章的地址,我们会给您删除此文章,给您带来不便请您谅解!

上一篇:Asp.net中时间格式化的几种方法
下一篇:解决方案、项目、程序集、命名空间

发表评论

最新留言

关注你微信了!
[***.104.42.241]2024年03月05日 00时37分16秒

关于作者

    喝酒易醉,品茶养心,人生如梦,品茶悟道,何以解忧?唯有杜康!
-- 愿君每日到此一游!

推荐文章

java 截屏_java实现截屏 2021-06-24
static块 java_java的static块执行时机 2021-06-24
java jsp标签_java/jsp 生成随机字符串 2021-06-24
queue pop java_队列(Java实现) 2021-06-24
从控制台接收数字java_java从控制台接收一个数字的实例详解 2021-06-24
java me教学_java me 视频教程 2021-06-24
百一测评java基础答案_百一测评——java基础笔试题及详解 2021-06-24
java violate 优化_高性能编程之java的volatile关键字 2021-06-24
Java中如何导入DW当中_用Dreamweaver插入Java特效方法 2021-06-24
c语音 web java_目前用来编写Web页面的主要语言是( )。 A.C语言 B.Java C.Delphi D.HTML 请帮忙给出正确答案和分析,谢谢!... 2021-06-24
java怎么调用手机手电_android 手电筒的实现 2021-06-24
java 字符拼接效率_Java 5种字符串拼接方式性能比较。 2021-06-24
java格子布局怎么设置高度_java – 将相对布局中的宽度和高度设置为百分比 2021-06-24
mach空串 php preg_python模式匹配与正则表达式 2021-06-24
java走迷宫时间复杂度_走迷宫(栈)-jiuzhuaxiong-ChinaUnix博客 2021-06-24
java ui awt_分享一个java的UI程序,awt+swing,一个桌球计费系统,按时间计费 2021-06-24
mysql官网下载ubuntu_ubuntu下安装mysql 2021-06-24
MySQL怎么查看分片键_MongoDB 分片片键如何选择 2021-06-24
centos下mysql常用的三种备份方法_centos7下mysql自动备份 2021-06-24
java gcm_java – GCM – 在6次尝试后无法将JSON请求发布到GCM 2021-06-24