- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我尝试使用 XmlPullParser 解析简单的 xml 文件。
<?xml version="1.0" encoding="utf-8"?>
<tests>
<test>
<name>Jack</name>
</test>
<test>
<name>Brad</name>
</test>
<test>
<name>Tom</name>
</test>
</tests>
这是MainActivity代码:
public class MainActivity extends ActionBarActivity {
ViewPager viewPager;
PagerAdapter pagerAdapter;
ArrayList<Quote> quotes;
ArrayList<Pers> persons;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
InputStream inputStream = getResources().openRawResource(R.xml.test);
Fetcher fetcher = new Fetcher();
persons = fetcher.parse(inputStream);
String str = new String();
for(int i = 0; i < persons.size(); i++) {
str += persons.get(i).getName();
}
Log.d("1", str);
}
}
这是 Fetcher 类代码:
public class Fetcher {
private ArrayList<Pers> persons;
private Pers person;
private String text;
public Fetcher() {
persons = new ArrayList<Pers>();
}
public ArrayList<Pers> parse(InputStream is) {
XmlPullParserFactory factory = null;
XmlPullParser parser = null;
try {
factory = XmlPullParserFactory.newInstance();
factory.setNamespaceAware(true);
parser = factory.newPullParser();
parser.setInput(is, null);
int eventType = parser.getEventType();
while(eventType != XmlPullParser.END_DOCUMENT) {
String tagname = parser.getName();
switch(eventType) {
case XmlPullParser.START_TAG:
if(tagname.equalsIgnoreCase("test")) {
person = new Pers();
}
break;
case XmlPullParser.TEXT:
text = parser.getText();
break;
case XmlPullParser.END_TAG:
if(tagname.equalsIgnoreCase("test")) {
persons.add(person);
} else if(tagname.equalsIgnoreCase("name")) {
person.setName(text);
}
break;
default:
break;
}
eventType = parser.next();
}
} catch(XmlPullParserException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
return persons;
}
}
为什么会出现XmlPullParserException异常?
org.xmlpull.v1.XmlPullParserException: unterminated entity ref (position:TEXT ��������������������...@1:49 in java.io.InputStreamReader@405534d8)
最佳答案
我更改了代码,现在可以使用了。感谢那些试图帮助我的人。
public class Fetcher {
private ArrayList<Pers> persons;
private Pers person;
private String text;
public Fetcher() {
persons = new ArrayList<Pers>();
}
public ArrayList<Quote> parse(Activity activity) throws XmlPullParserException, IOException {
Resources resources = activity.getResources();
XmlResourceParser xmlResourceParser = resources.getXml(R.xml.quotes);
person = new Pers();
xmlResourceParser.next();
int eventType = xmlResourceParser.getEventType();
while(eventType != XmlPullParser.END_DOCUMENT) {
String tagName = xmlResourceParser.getName();
switch(eventType) {
case XmlPullParser.START_TAG: {
if(tagName.equalsIgnoreCase("test")) {
person = new Pers();
}
break;
}
case XmlPullParser.TEXT: {
text = xmlResourceParser.getText();
break;
}
case XmlPullParser.END_TAG: {
if(tagName.equalsIgnoreCase("test")) {
persons.add(person);
} else if(tagName.equalsIgnoreCase("name")) {
person.setId(Integer.parseInt(text));
}
break;
}
default:
break;
}
eventType = xmlResourceParser.next();
}
return persons;
}
}
关于java - 为什么会出现XmlPullParserException异常?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19501336/
该应用程序在使用支持库 v23.1.1 插件并在 Android 4.4.4 (API 19) 下运行时运行良好: compile 'com.android.support:appcompat-v7:
我正在尝试从我的 android 项目中的 jar 文件中读取可绘制的 xml 文件。 private Drawable readDrawableFromJar(String p_strFilePat
我正在尝试使用 XStream。我已将 XStream 可执行 Jar 文件添加到我的项目中。执行以下命令: XStream xstream = new XStream(); 导致以下异常:
我在尝试使用 kSOAP2 在 Android 中使用 ColdFusion SOAP 服务时遇到了一个问题。这是我的 java 代码,用于调用我在 ColdFusion 中编写的测试方法(它只返回一
我有以下内容: public String searchRecipes( String searchString, int pageNumber ) throws Exception {
我在使用 web 服务的 android 中遇到这个错误。 当我运行 android webservice 并运行 android 项目时会发生这种情况 那么这里有什么问题呢? 请问有人知道吗? 谢谢
昨天我有一个用户给我发邮件说我的应用程序有问题,所以我开始和他一起调试并让他把电话日志发给我,当他收到一个 XmlPullParserError 时调用服务器 E/Message Exchange::
我在遗留 JavaME 项目上使用 kXML2。我收到一个 XML,其中一些属性包含编码的实体。当我通过调用检索该属性值时: parser.getAttributeValue 它抛出一个异常: Xml
我正在尝试测试一些开源 android 应用程序,但我无法构建它。 Gradle 构建不断失败并显示消息:[...] Unable to merge dex 我已经尝试了其他 SO 问题的所有建议,但
我正在尝试将 xml 文件(作为 byte[])绑定(bind)到 java 对象。这是我的代码- public voidinputConfigXML(String xmlfile, byte[] x
我正在尝试解析资源文件夹中的 XML 文件。这就是我想要做的 - public void loadXMLtoDB() { Resources resource = mContext.getRe
我的问题是我必须像这样解析 HTML 数据 84 101 some textHere comes a table definition 并且 XmlPullParserException 在以下情况下
这是我为 php (Yii) web 服务调用创建的 WSDL 以连接到 android。但是我明白了 10-19 11:17:36.068: W/System.err(11165): org.xml
我正在尝试解析一个类似于 res 文件夹下的 string.xml 文件的 xml 文件。但在解析时我遇到了异常。 下面是我的 xml 文件。 No corporate email
我目前正在学习 Android 编程,当我尝试解析 XML 时,出现以下错误(程序运行正常,但仅解析第一个 XML 链接): 这是我的代码: public class RSSActivity exte
我是在 android 上使用 KSOAP2 的新手,我遇到了问题 我看过关于同一问题的类似帖子,但没有人帮助我解决错误 我正在尝试连接到返回我登录时使用的用户名的网络服务 (WSDL)。当我在任何浏
将 robolectric 添加到 build.gradle 文件后出现错误 Program type already present: org.xmlpull.v1.XmlPullParserExc
我在使用自定义属性时遇到了问题。请帮助.. 我在 attr.xml 中定义了自定义属性 我有一个主题 @drawable/fav_icon @drawable/not_fav_ico
我正在使用 NDK 支持并收到此错误: 分级: 分布:gradle-2.5-all 构建工具:gradle-experimental:0.2.1 XML: 警告: vector requ
我正在拼命寻找 KSOAP2-Android 中此 XmlPullParserException 的原因。这是代码: String NAMESPACE = "urn:sap-c
我是一名优秀的程序员,十分优秀!