2011-02-01 5 views
0

파일을 http 서버에 업로드하고 싶습니다. 이것은 내가 지금까지 가지고있는 코드이다. 문제는 파일이 전혀 업로드되지 않는다는 것입니다. 코드에 무슨 문제가 있습니까?파일을 HttpConnection에 업로드 - BLACKBERRY/JavaME

업데이트 : 문제를 해결할 수있었습니다. 같은 문제가있는 사람이라면이 코드가 도움이 될 수 있습니다.

try{ 
    FileConnection path = (FileConnection)Connector.open(main_directory + "status.zip"); 
       if (!path.exists()) {path.create();} 

       byte[] buf ; 
       buf = new byte[(int) path.fileSize()]; 

       in = path.openInputStream(); 
       in.read(buf); 

       Logger.logEventInfo("FILE INPUT: " + in); 
       ByteArrayOutputStream outputstream = new ByteArrayOutputStream(buf.length);      
       Base64OutputStream base64 = new Base64OutputStream(outputstream);   
        base64.write(buf); 

String upload = null; upload = outputstream.toString();

+0

while ((길이 = in.read (buf))> = 0) { bout.write (buf, 0, length); } – JohnDoe4136

+0

코드가 혼란 스럽습니다. 제거되거나 단순화 될 수있는 많은 것들이있을 수 있습니다. 그러나 적어도 줄'String FileUpload = new String (byout.toByteArray(), "UTF8");)은보기에 좋지 않습니다. – BalusC

+0

서버에 업로드 할 수 있도록 파일을 열고 String에 쓰려고합니다. – JohnDoe4136

답변

3

길이가 0 인 바이트 배열로 InputStream.read (byte [])를 호출합니다. 정의에 따라 항상 0 (읽지 않음)이 반환되므로 while 루프가 종료되지 않습니다.

글쎄, 그건 당신의 첫 번째 문제입니다. 이 코드에는 다른 많은 문제가 있습니다.

관련 문제