android使用JAXBContext包错了,求解答
发布网友
发布时间:2022-10-18 12:28
我来回答
共2个回答
热心网友
时间:2023-11-14 01:16
因为有需求要与传递xml格式的字符串(不是文件方式)。
在网上搜了好半天,才知道JAXB,首先在建了个java工程来属性这个东西:
Java code?
1
public static void main(String[] args) throws JAXBException, MalformedURLException {
JAXBContext context = JAXBContext.newInstance(Report.class);
Marshaller shaller = context.createMarshaller();
shaller.setProperty(Marshaller.JAXB_ENCODING, "gb2312");
shaller.setProperty(Marshaller.JAXB_FORMATTED_OUTPUT, true);
shaller.setProperty(Marshaller.JAXB_FRAGMENT, false);
Report report = new Report();
TsnSession tsnsession = new TsnSession();
TsnSessions tsnsessions = new TsnSessions();
tsnsession.setType(001);
tsnsession.setUrl(new URL("http://www.baidu.com"));
tsnsessions.setTsnInformation("00");
tsnsessions.setTsnsession(tsnsession);
tsnsessions.setTsnsession(tsnsession);
report.setTsncode("1001");
report.setTsnSessions(tsnsessions);
shaller.marshal(report, System.out);
}
跑出来的结果:
XML/HTML code?
1
<?xml version="1.0" encoding="gb2312" standalone="yes"?>
<report>
<tsncode>1001</tsncode>
<tsnsessions tsninformation="00">
<tsnsessions>
<url>http://www.baidu.com</url>
<type>1</type>
</tsnsessions>
<tsnsessions>
<url>http://www.baidu.com</url>
<type>1</type>
</tsnsessions>
</tsnsessions>
</report>
然后满怀信心的我建了个android工程来测试, 上代码:
Java code?
1
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
btn = (Button) findViewById(R.id.main_btn);
tv = (TextView) findViewById(R.id.main_tv);
热心网友
时间:2023-11-14 01:16
你说是是javax.xml.bind.JAXBContext这个么、这个jdk本身就有啊。而且。你直接使用。然后测试的时候看看缺什么类。再重新加不就行了。