I am using the following code read content from server
URL url = new URL("http://dev.dublabs.com:8080/mobileCampus/json/emergencyContacts");
HttpURLConnection httpcon = (HttpURLConnection)url.openConnection();
BufferedReader in = new BufferedReader(new InputStreamReader(httpcon.getInputStream()));
String inputLine;
while((inputLine=in.readLine())!=null){
System.out.println(inputLine);
}
Following is the response from server:
BEGIN:VCARD
VERSION:2.1
FN:Campus Police
N:Campus Police
TEL:555-EDU-HELP
ADR:8230 Boone Blvd.;Bldg 001;;Vienna;VA;22181;
X-MS-OL-DEFAULT-POSTAL-ADDRESS:01155
EMAIL:[email protected]
REV:20120501T180000Z
END:VCARD
BEGIN:VCARD
VERSION:2.1
FN:Campus Medical Clinic
N:Campus Medical Clinic
TEL:555-EDU-HURT
ADR:8230 Boone Blvd.;Bldg 001;;Vienna;VA;22181;
X-MS-OL-DEFAULT-POSTAL-ADDRESS:01155
EMAIL:[email protected]
REV:20120501T180000Z
END:VCARD
Is there any way to convert that to JSON array?
Okay, here it is...
Using this library should solve your problem: https://github.com/mangstadt/ez-vcard
--- approach using your InputStreamReader (more exactly: Reader)
VCard vcard = Ezvcard.parse(reader).first();
(where reader is of Type "Reader", which InputStreamReader is)
and export it to JSON with the following snippet:
String json = Ezvcard.writeJson(vcard).go();