2011-12-22 4 views
0
try { 


    File f = new File("file:///android_asset/[2011]011TAXMANN.COM00167(PATNA)") ; 


     FileInputStream fis= new FileInputStream(f); 
     System.out.println("_______YOUR HTML CONTENT CODE IS BELLOW WILL BE PRINTED IN 2 SECOND _______"); 
     Thread.sleep(2000); 
     int ch; 
     while((ch=fis.read())!=-1) 
     { 
     fileContent=fileContent+(char)ch;     // here i stored the content of .Html file in fileContent variable 

     } 
     System.out.print(fileContent); 

     //} 
    } catch (FileNotFoundException e) { 
     // TODO Auto-generated catch block 
     e.printStackTrace(); 
    } catch (InterruptedException e) { 
     // TODO Auto-generated catch block 
     e.printStackTrace(); 
    } catch (IOException e) { 
     // TODO Auto-generated catch block 
     e.printStackTrace(); 
    } 

Это мой код. Я хочу читать html-содержимое из папки asstes. Мой файл доступен в папке asstes. Но он дает исключение FileNotFoundException. Так что PLZ: кто-нибудь скажет мне, как читать html-содержимое из папки asstes в android?как читать html-содержимое из папки с ресурсами в android

Файл f = новый файл ("file: /// android_asset/[2011] 011TAXMANN.COM00167 (PATNA)"); , когда я отладка е дает = файл:/android_asset/[2011] 011TAXMANN.COM00167 (Патна)

плз скажите мне, как получить corrct каталога и где им делать это неправильно изгоняется я подхожу файл: /// android_asset/[ 2011] 011TAXMANN.COM00167 (PATNA)

ответ

1

Это способ загрузить HTML-файл из активов в WebView

webview.loadUrl("file:///android_asset/Untitled-1.html"); 

Untitled-1.html --- имя файла, который должен быть первым сохранить, как расширение .html

Отредактировано

попробуйте эту ссылку

http://developer.android.com/reference/android/content/res/AssetManager.html

есть метод из этого дока общественности окончательного String [] список (путь String)

+0

Файл F = новый файл («/ файла:///android_asset/[2011]011TAXMANN.COM00167(PATNA) "); – Joan

+0

Нет, я не могу это сделать, я хочу, чтобы содержимое этого файла не отображалось. – Joan

+0

Что значит вы хотите прочитать тег по значениям тега – Sameer

1

Вы кот получить InputStream этого кода: getResources().getAssets().open("you_file_name_goes_here");

+0

, показывающий Exception File not Found Exception ... – Joan

+0

Какой параметр вы передаете open()? – muffinmad

1

Вы не хотите использовать

webview.loadUrl('file:///android_asset/htmlFile.html'); 

правый?

попробовать это я нашел в блоге:

static String getHTMLDataBuffer(String url,Context context) { 
    InputStream htmlStream; 
    try { 
    if (Utils.isReferExternalMemory() && url.contains("sdcard")) { 
    String tempPath = url.substring(7, url.length());//remove file:// from the url 
    File file = new File(tempPath); 
    htmlStream = new FileInputStream(file); 
    }else{ 
    String tempPath = url.replace("file:///android_asset/", ""); 
    htmlStream = context.getAssets().open(tempPath); 
    } 
    Reader is = null; 
    try { 
    is = new BufferedReader(new InputStreamReader(htmlStream, "UTF8")); 
    } catch (UnsupportedEncodingException e) { 
    // TODO Auto-generated catch block 
    e.printStackTrace(); 
    } 


    // read string from reader 
    final char[] buffer = new char[1024]; 
    StringBuilder out = new StringBuilder(); 
    int read; 
    do { 
    read = is.read(buffer, 0, buffer.length); 
    if (read>0) { 
     out.append(buffer, 0, read); 
    } 
    } while (read>=0); 

    return out.toString(); 
    } catch (FileNotFoundException e) { 
    // TODO Auto-generated catch block 
    e.printStackTrace(); 
    } catch (IOException e) { 
    // TODO Auto-generated catch block 
    e.printStackTrace(); 
    } 
    return null; 
    } 

использования:

 String data = getHTMLDataBuffer("file:///android_asset/yourHtmlFile",this); 
     webview.loadDataWithBaseURL("http://example.com", data, "text/html", "utf-8", null); 

Извините за мой плохой английский :)