2016-06-11 117 views
1

您好我一直有getAsset()方法的麻烦。我试图从资产文件夹中获取一个xml文件,并将getAsset()放入inputStream中。无法解析getAssets()方法

CODE:

public class MainActivity extends AppCompatActivity { 
    List people; 
    @Override 
    protected void onCreate(Bundle savedInstanceState) { 
     super.onCreate(savedInstanceState); 
     setContentView(R.layout.activity_main); 

     try { 
      InputStream is = getAssets().open("people.xml"); 
      people = XMLParser.readPeople(is); 
     }catch (IOException e){ 
      e.printStackTrace(); 
     } 
    } 
} 

XML:

<people> 
    <person> 
     <name>joe</name> 
     <dob>11/08/16</dob> 
     <gender>male</gender> 
    </person> 
</people> 

谁能告诉我怎么回事与getAssets()方法

+0

你面临什么问题?它抛出异常吗? – KDeogharkar

回答

2

取而代之的是

 try { 
      InputStream is = getAssets().open("people.xml"); 
      people = XMLParser.readPeople(is); 
     }catch (IOException e){ 
      e.printStackTrace(); 
     } 

使用这

 try { 
       AssetManager assetManager = getBaseContext().getAssets(); 
       InputStream is = assetManager.open("people.xml"); 
       people = XMLParser.readPeople(is); 
      }catch (IOException e){ 
       e.printStackTrace(); 
      } 
+1

它与getBaseContext()做同样的事情 –

+0

@mohammadalam尝试“清理”该项目和“重建”它。 – Ironman

+0

谢谢我,我不得不重建项目 –