j2me networking, threads and deadlocks ตัวอย่างโคดสั้นๆ ของการเอารูปจากเน็ตมาแสดง

|
http://stackoverflow.com/questions/867660/j2me-networking-threads-and-deadlocks

KISS: Keep it simple, stupid!

|

วิธีใช้ SAX Parser

|
1. ก่อนอื่นก็ต้อง import package ที่จำเป็น
import javax.xml.parsers.SAXParser;
import javax.xml.parsers.SAXParserFactory;

2. ต้องมี class ที่ extends DefaultHandler
import org.xml.sax.Attributes;
import org.xml.sax.SAXException;
class ParserHandler extends DefaultHandler {
...
}

3. เริ่มใช้งาน
SAXParserFactory factory = SAXParserFactory.newInstance();
SAXParser saxParser = factory.newSAXParser();
ParserHandler parser = new ParserHandler();
String str = saxParser.parse( InputStream, parser );

4. ใน class ParserHandler ต้องมี method พวกนี้อยู่
สมมุติเรามี <title>....</title> มันจะถูกเรียกเมื่อเจอ <title>, qName คือ title ส่วน attributes คือลิสต์ของ attribute ใน <title>
public void startElement (String uri, String localName, String qName, Attributes attributes) throws SAXException {
......
}
ถูกเรียกเมื่อเจอตัวอักษรอื่นๆ ระหว่าง tag
public void characters (char buf [], int offset, int len) throws SAXException
{
......
}

ถูกเรียกเมื่อเจอ </title> มักจะใช้ push อะไรออกมา
public void endElement (String uri, String localName, String qName) {
......
}