读XML文件时出现空格字符情况


读XML的时候可能遇到读完一个XML文件时候后面还有很多很多的空格。

主要是什么原因呢,主要是你写XML的时候,我们一般都习惯的写成了如下代码。

  1. public static byte[] StreamToByte(InputStream inStream) throws Exception  
  2. {  
  3.         byte casebyte[]=new byte[1024];  
  4.         ByteArrayOutputStream byteOutStream=new ByteArrayOutputStream();  
  5.         int n=0;  
  6.         while((n=inStream.read(casebyte))!=-1)  
  7.         {        //改成write(casebyte,0,n) 重第0个读取,读到第N个,即使下次内容没有1k,也可以避免空格   
  8.             byteOutStream.write(casebyte);  
  9.         }  
  10.         inStream.close();  
  11.         byteOutStream.close();  
  12.         return byteOutStream.toByteArray();  
  13. }  

注意看byteOutStream.wrte();你之前的casebyte[1024] 声明的是1K的字符,而如果你的输入流只有1000byte的时候,它会自动给你补24个空格,所以你下次读取XML的时候你会发现,后面有很多的空格,像小方格一样。

而我们应该做的的,把write(casebyte)改成 write(str,0,len)就可以避免空格了。

相关内容