2013-01-16 51 views
0

我正在读取HTML文件并将其保存为字符串。我想读取长度(int len = con.getcontentlength())并将char charArray=new char(len),但getContentLength的结果始终为-1。 所以我修复charArray但如果我把 char[] charArray=new char[1]char[] charArray=new char[512]char[] charArray=new char[1024]字符数组大小?用于将HTMl文件保存为字符串的Stringbuffer

它始终工作。

我不明白为什么。从new char[1];

public static void main(String[] args) throws Exception 
{ 
    String name="AAAA";  
    URL url = new URL("http:..."); 
    URLConnection con = url.openConnection(); 

    InputStream is = con.getInputStream(); 
    InputStreamReader isr = new InputStreamReader(is); 

    int numCharsRead; 
    char[] charArray = new char[1]; 
    StringBuffer sb = new StringBuffer(); 
    while ((numCharsRead = isr.read(charArray)) > 0) 
     sb.append(charArray, 0, numCharsRead); 
    String htmlString = sb.toString(); 
+0

除非你的程序是多线程没有用StringBuffer。改用StringBuilder。 – soulcheck

+0

好的thx我改为Stringbuilder,但charArray?我可以把我想要的尺寸 – Alpan67

回答

0
InputStreamReader isr = new InputStreamReader(is); 
    int c = 0; 
    while((c = isr.read()) != -1) { 
     char character = (char) c; 

     System.out.println(character); 

    } 
+0

我正在阅读一个HTML文件,System.in ??? – Alpan67