网络通信
Http的Get方式读取数据
@Override
public void run() {
try {
URL url = new URL(".......");
URLConnection connection = url.openConnection();
InputStream is = connection.getInputStream();
InputStreamReader isr = new InputStreamReader(is);
BufferedReader br = new BufferedReader(isr);
String line;
StringBuilder builder = new StringBuilder();
while ((line = br.readLine()) != null){
builder.append(line);
}
br.close();
isr.close();
is.close();
}catch (MalformedURLException e){
e.printStackTrace();
}catch (IOException e){
e.printStackTrace();
}
}
}
new ReadByGet().start();
使用HttpClient进行Get方式通信
class ClientReadByGet extends Thread{
HttpClient httpClient = HttpClients.createDefault();
@Override
public void run() {
HttpGet httpGet = new HttpGet("http://www.baidu.com");
try {
HttpResponse httpResponse = httpClient.execute(httpGet);
HttpEntity httpEntity = httpResponse.getEntity();
String result = EntityUtils.toString(httpEntity,"UTF-8");
System.out.println(result);
}catch (IOException e){
e.printStackTrace();
}
}
}
new ClientReadByGet().start();
JSON读取数据
try {
File file = new File("/test.json");
String content = FileUtils.readFileToString(file,"UTF-8");
JSONObject jsonObject = new JSONObject(content);
System.out.println(jsonObject.get("name"));
JSONArray jsonArray = jsonObject.getJSONArray("arrays");
JSONObject jsonObject1 = (JSONObject) jsonArray.get(0);
System.out.println(jsonObject1.get("name")+" "+jsonObject1.get("age"));
System.out.println(jsonObject.get("date"));
}catch (IOException e){
e.printStackTrace();
}
字符串保存为JSON文件
String[] list=str.split(",");
JSONObject jsonObject=new JSONObject();
String name = list[0];
String open = list[1];
String close = list[2];
String current = list[3];
String high = list[4];
String low = list[5];
jsonObject.put("name",name);
jsonObject.put("open",open);
jsonObject.put("close",close);
jsonObject.put("current",current);
jsonObject.put("high",high);
jsonObject.put("low",low);
FileOutputStream fos=new FileOutputStream("../JavaTest2/Exam3/temp/股票编码.json");
OutputStreamWriter bos = new OutputStreamWriter(fos);
String jsonString=jsonObject.toString();
bos.write(String.valueOf(jsonString));
bos.close();
fos.close();
System.out.println("解析为json成功");
字符串保存为xml文件
try {
String[] list=str.split(",");
String name = list[0];
String open = list[1];
DocumentBuilderFactory factory=DocumentBuilderFactory.newInstance();
DocumentBuilder builder=factory.newDocumentBuilder();
Document document=builder.newDocument();
Element root=document.createElement("Socket");
Element name1=document.createElement("name");
name1.setTextContent(name);
Element open1=document.createElement("open");
open1.setTextContent(open);
root.appendChild(name1);
root.appendChild(open1);
document.appendChild(root);
TransformerFactory transformerFactory=TransformerFactory.newInstance();
Transformer transformer=transformerFactory.newTransformer();
StringWriter writer=new StringWriter();
transformer.transform(new DOMSource(document),new StreamResult(new File("../JavaTest2/Exam3/temp/股票编码.xml")));
System.out.println("解析为xml成功");
读取xml文件
try {
DocumentBuilderFactory builderFactory = DocumentBuilderFactory.newInstance();
DocumentBuilder documentBuilder = builderFactory.newDocumentBuilder();
Document document = documentBuilder.parse(new File("newHelloFolder/two/languages.xml"));
//获取文档根元素
Element root = document.getDocumentElement();
System.out.println(root.getAttribute("cat"));
//获取文档子元素
NodeList list = root.getElementsByTagName("language");
for(int i = 0;i < list.getLength();i++){
Element language = (Element) list.item(i);
System.out.println(language.getAttribute("id"));
//不推荐使用
//Element name = (Element) language.getElementsByTagName("name").item(0);
//Element ide = (Element) language.getElementsByTagName("ide").item(0);
//System.out.print(name.getTextContent()+" ");
//System.out.println(ide.getTextContent());
NodeList childList = language.getChildNodes();
for(int j = 0;j < childList.getLength();j++){
Node child = childList.item(j);
if(child instanceof Element){
System.out.println(child.getNodeName()+" "+child.getTextContent());
}
}
}
}catch (ParserConfigurationException e){
e.printStackTrace();
}catch (IOException e){
e.printStackTrace();
}catch (SAXException e){
e.printStackTrace();
}