关于一个读取xml文件的问题和解决

    今天做项目案例遇到一个问题,是关于读取xml的时候,读取不到数据的问题,我检查了N多次代码,发现代码并没有问题,因为读取过程中涉及网页的跳转问题,上午运行程序可以顺利跳转网页,下午添加了一个注册功能结果就报了下面错误,这是做的第一个功能模块。我只能说新手还是太嫩了。第一个模块就出了问题

    寻找bug的过程记录下来,以自勉:

1,首先是去找代码问题,因为报的错误中出现了代码错误的位置,去掉无关代码,直接沿着一条代码的线,从servlet到base到factory逐一排查,因为出现这个问题肯定不会是业务层和数据库查询的问题,排除法

2,逐一排查相关代码,因为编译能够通过,应该不会是代码写错这样的问题,而且工具有检查代码格式错误的能力,所以定位到逻辑错误的问题

3,因为经验少一下子没反应过来,这明显是读取文件出现了问题,所以聚焦在了读取配置文件上,

4,逐一检查java中的方法,没有问题,那问题出在哪里了呢?

5,那就只有xml的问题,看了几遍xml中的语法,并且对照以前写的东西,也没有发现错误,这就奇怪了

6,反过头来继续看了看报的错,猜测会不会是路径问题,又去查看了一下xml的路径

7,卧槽!还真是,xml本该放在项目SRC文件下面,结果放错位置了,难怪读不到

8,有则改之无则加勉,记录下来供以后翻阅


  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
当然,我可以为您提供一个使用 PHP 读取 文件的示例代码。以下是一个简单示例,演示如何读取 XML 文件提取其中的数据。 ```php <?php// XML 文件路径 $xmlFile = 'path/to/your/xml/file.xml'; // 创建 XML 解析器$parser = xml_parser_create(); // 定义处理 XML 开始标签的函数 function startElement($parser, $element_name, $element_attrs) { // 在这里可以根据需要处理特定的 XML 元素 // 例如:echo "开始元素: " . $element_name . "<br>"; } // 定义处理 XML 结束标签的函数 function endElement($parser, $element_name) { // 在这里可以根据需要处理特定的 XML 元素 // 例如:echo "结束元素: " . $element_name . "<br>"; } // 定义处理 XML 文本数据的函数 function characterData($parser, $data) { // 在这里可以根据需要处理特定的 XML 数据 // 例如:echo "文本数据: " . $data . "<br>"; } // 设置处理 XML 开始标签的回调函数 xml_set_element_handler($parser, "startElement", "endElement"); // 设置处理 XML 文本数据的回调函数 xml_set_character_data_handler($parser, "characterData"); // 打开 XML 文件进行读取 if (!($fp = fopen($xmlFile, "r"))) { die("无法打开 XML 文件!"); } // 读取 XML 数据 while ($data = fread($fp, 4096)) { xml_parse($parser, $data, feof($fp)) or die(sprintf("XML 错误: %s 在行 %d", xml_error_string(xml_get_error_code($parser)), xml_get_current_line_number($parser))); } // 关闭 XML 文件和解析器 fclose($fp); xml_parser_free($parser); ?> ``` 您需要将 `path/to/your/xml/file.xml` 替换为您实际的 XML 文件路径。此示例代码创建了一个 XML 解析器,然后定义了处理 XML 元素和数据的回调函数。最后,它打开 XML 文件并使用解析器读取 XML 数据。 请注意,这只是一个基本示例,您可以根据实际需求进行修改和扩展。希望对您有所帮助!如果您有任何其他问题,请随时提问。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值