แนะนำฟังก์ชันต่างๆ สั้นๆ
1. แยกลิงค์สินค้า (มือถือ) ออกจากหน้า JD Mobile Daily Flash Sale เป็นระยะ ๆ (เช่น 1 นาที)
http://sale.360buy.com/act/8VTHFGr10CjMDyZ.html#01
2. ส่งข้อมูลไปยังแบ็กเอนด์ตามลิงก์ผลิตภัณฑ์ที่แยกออกมาเพื่อรับราคาผลิตภัณฑ์ คำอธิบาย ส่วนลด สินค้าคงคลัง (ไม่ว่าจะมีในสต็อก) และข้อมูลอื่น ๆ
3. ตัดสินตามข้อมูลที่ได้รับ
หากตรงตามเงื่อนไขเบราว์เซอร์จะถูกเรียกโดยอัตโนมัติ (โดยเพิ่ม Chrome ให้กับตัวแปรสภาพแวดล้อมหรือรหัสถูกเปลี่ยนเพื่อเพิ่มเส้นทางของ browser.exe ไปยังรหัสและโปรแกรมได้รับการแก้ไข) เพื่อเปิดการสั่งซื้อสินค้า หน้าหนังสือ.
4. ที่จริงแล้ว วิธีนี้ช่วยแก้ปัญหาได้: คุณไม่จำเป็นต้องรีเฟรชหน้าเว็บบ่อยๆ หรือตรวจสอบด้วยตนเองอีกต่อไป
การเข้าสู่ระบบและการส่งคำสั่งซื้อจะต้องได้รับการแก้ไขโดยเบราว์เซอร์ (ดูเหมือนว่าจุดการทำงานเหล่านี้จะซับซ้อนกว่าและยังไม่ได้รับการประมวลผล)
โปรแกรมไม่สมบูรณ์แบบ:
มีหลายตำแหน่งที่ต้องแก้ไขก่อนเรียกใช้:
1. ตัวแปรสภาพแวดล้อม: Chrome เพิ่มตัวแปรเบราว์เซอร์เพื่อให้โทรได้ง่าย - หรือแก้ไขซอร์สโค้ดด้วยตัวเองแล้วเปิดด้วยวิธีอื่น
2. จำเป็นต้องกำหนดข้อมูลราคาสินค้าแต่ละรายการในกิจกรรม นี่ไม่ดี จะต้องแก้ไขซอร์สโค้ด
การแก้ไขอยู่ในฟังก์ชัน filter()
3.อีกจุดที่ต้องแก้ไขคือ
hasStore (สตริง skuidkey)
ที่อยู่ = "http://price.360buy.com/stocksoa/StockHandler.ashx?callback=getProvinceStockCallback&type=pcastock&skuid="+skuidkey+"&provinceid=1&cityid=2800&areaid=2850";
cityid=2800&areaid=...ข้อมูลตำแหน่งของสถานที่นี้ สิ่งนี้ไม่ได้รับการประมวลผล คุณต้องคิดออกเองจากหน้าผลิตภัณฑ์โทรศัพท์มือถือ
จริงๆ แล้วมันก็ค่อนข้างง่าย chrome+F12 หลังจากแก้ไข "เมือง" ภูมิภาค และข้อมูลอื่นๆ แล้ว คุณจะเห็นคำขอรับที่ส่งไปที่พื้นหลัง ลิงก์นี้มีข้อมูลที่จำเป็น (http://price.360buy.com/stocksoa/StockHandler.ashx?callback=getProvinceStockCallback&type=pcastock&skuid=64EBD0F20F593D95C72C6EED59B64658&provinceid=1&cityid=2805&areaid=2854) ปรับเปลี่ยนให้เหมาะสม
Util.java
คัดลอกรหัสรหัสดังต่อไปนี้:
มุมมองแพ็คเกจการใช้งาน;
นำเข้า java.util.ArrayList;
คลาสสาธารณะ Util {
การพิมพ์โมฆะคงที่สาธารณะ (วัตถุ o) {
System.out.print(o);
-
โมฆะคงสาธารณะ println (วัตถุ o) {
ถ้า(null==o)
System.out.println();
อื่น
System.out.println(o);
-
ArrayList สาธารณะ <จำนวนเต็ม> toArrayList (int [] ints) {
ถ้า(ints.length==0)
กลับเป็นโมฆะ;
ArrayList<จำนวนเต็ม> al=new ArrayList<จำนวนเต็ม>();
สำหรับ(int i=0;i<ints.length;i++){
อัล.เพิ่ม(ints[i]);
-
กลับอัล;
-
-
Miaosha360buy.java
คัดลอกรหัสรหัสดังต่อไปนี้:
แพ็คเกจจิงตง;
คลาสสาธารณะ Miaosha360buy {
java.util.concurrent.CountDownLatch t= ใหม่ java.util.concurrent.CountDownLatch(1);
-
* @param args
-
โมฆะคงที่สาธารณะ main (String [] args) {
// TODO ต้นขั้ววิธีการสร้างอัตโนมัติ
System.out.println(Thread.currentThread().getName() + "เริ่มต้น");
Miaosha360buy ms360=ใหม่ Miaosha360buy();
ใหม่ ThreadOne360buy(ms360.t).start();
ในขณะที่ (จริง) {
พยายาม {
ms360.t.รอ();
} จับ (InterruptedException e) {
// TODO บล็อก catch ที่สร้างขึ้นอัตโนมัติ
e.printStackTrace();
-
พยายาม {
Thread.sleep(1,000*60); // โทรทุก 1 นาที?
} จับ (InterruptedException e) {
// TODO บล็อก catch ที่สร้างขึ้นอัตโนมัติ
e.printStackTrace();
-
ms360.t=ใหม่ java.util.concurrent.CountDownLatch(1);
ใหม่ ThreadOne360buy(ms360.t).start();
System.out.println("ดอกยางใหม่ในขณะที่..");
-
-
-
Miaosha360buy.java
คัดลอกรหัสรหัสดังต่อไปนี้:
แพ็คเกจจิงตง;
คลาสสาธารณะ Miaosha360buy {
java.util.concurrent.CountDownLatch t= ใหม่ java.util.concurrent.CountDownLatch(1);
-
* @param args
-
โมฆะคงที่สาธารณะ main (String [] args) {
// TODO ต้นขั้ววิธีการสร้างอัตโนมัติ
System.out.println(Thread.currentThread().getName() + "เริ่มต้น");
Miaosha360buy ms360=ใหม่ Miaosha360buy();
ใหม่ ThreadOne360buy(ms360.t).start();
ในขณะที่ (จริง) {
พยายาม {
ms360.t.รอ();
} จับ (InterruptedException e) {
// TODO บล็อก catch ที่สร้างขึ้นอัตโนมัติ
e.printStackTrace();
-
พยายาม {
Thread.sleep(1,000*60); // โทรทุก 1 นาที?
} จับ (InterruptedException e) {
// TODO บล็อก catch ที่สร้างขึ้นอัตโนมัติ
e.printStackTrace();
-
ms360.t=ใหม่ java.util.concurrent.CountDownLatch(1);
ใหม่ ThreadOne360buy(ms360.t).start();
System.out.println("ดอกยางใหม่ในขณะที่..");
-
-
-
ThreadOne360buy.java
คัดลอกรหัสรหัสดังต่อไปนี้:
แพ็คเกจจิงตง;
นำเข้า java.io.IOException;
นำเข้า java.util.ArrayList;
นำเข้า java.util.HashMap;
นำเข้า java.util.List;
นำเข้า java.util.regex.Matcher;
นำเข้า java.util.regex.Pattern;
นำเข้า org.apache.http.HttpEntity;
นำเข้า org.apache.http.HttpResponse;
นำเข้า org.apache.http.client.ClientProtocolException;
นำเข้า org.apache.http.client.methods.HttpGet;
นำเข้า org.apache.http.impl.client.DefaultHttpClient;
นำเข้า org.apache.http.util.EntityUtils;
นำเข้า org.jsoup.Jsoup;
นำเข้า org.jsoup.nodes.Document;
นำเข้า org.jsoup.nodes.Element;
นำเข้า org.jsoup.select.Elements;
นำเข้ามุมมอง Util.Util;
ThreadOne360buy คลาสสาธารณะขยายเธรด {
java.util.concurrent.CountDownLatch ค;
ArrayList al;//บันทึกหน้าสินค้าลดราคาแฟลช
ราคาลอยตัว=0.0f;//ราคาสินค้า
ส่วนลดลอยตัว=0.0f;//ส่วนลดสินค้า
//ใช้เพื่อบันทึกข้อมูลเธรด ไม่มีประโยชน์มากสำหรับโปรเจ็กต์นี้
รายการคงที่ส่วนตัว <Thread> runningThreads = new ArrayList <Thread>();
//นี่คือตัวนับ (ใช้งานไม่เก่งนัก เธรดมักจะรู้สึกว่าซับซ้อนกว่าเสมอ)
ThreadOne360buy สาธารณะ (java.util.concurrent.CountDownLatch c) {
นี้.c=c;
-
@แทนที่
โมฆะสาธารณะวิ่ง () {
register(this);//ลงทะเบียนเมื่อเธรดเริ่มทำงาน
// พิมพ์แท็กเริ่มต้น
System.out.println(Thread.currentThread().getName() + "เริ่ม...");
พยายาม {
//จับตาดูหน้าแฟลชเซลมือถือ Jingdong
this.getMessage("http://sale.360buy.com/act/8VTHFGr10CjMDyZ.html#01");
} จับ (ClientProtocolException e) {
// TODO บล็อก catch ที่สร้างขึ้นอัตโนมัติ
e.printStackTrace();
c.นับถอยหลัง();
} จับ (IOException จ) {
// TODO บล็อก catch ที่สร้างขึ้นอัตโนมัติ
e.printStackTrace();
c.นับถอยหลัง();
-
c.นับถอยหลัง();
unRegist(this);//ยกเลิกการลงทะเบียนเมื่อเธรดสิ้นสุดลง
// พิมพ์แท็กปิดท้าย
System.out.println(Thread.currentThread().getName() + "สิ้นสุด");
-
การลงทะเบียนโมฆะสาธารณะ (เธรด t) {
ซิงโครไนซ์ (runningThreads) {
runningThreads.add(t);
-
-
โมฆะสาธารณะ unRegist (เธรด t) {
ซิงโครไนซ์ (runningThreads) {
runningThreads.remove(t);
-
-
hasThreadRunning บูลีนแบบคงที่สาธารณะ () {
// โดยการตัดสินว่า runningThreads ว่างเปล่าหรือไม่ คุณจะทราบได้ว่ามีเธรดใดที่ยังไม่ได้ดำเนินการหรือไม่
กลับ (runningThreads.size() > 0);
-
-
* รับลิงค์ผลิตภัณฑ์ skuid สินค้า skuidkey ราคา และข้อมูลร้านค้าจากหน้า flash sale บนมือถือ
* @param url: หน้าลดราคาแฟลชบนมือถือ
* @พ่น ClientProtocolException
* @throwsIOException
-
โมฆะสาธารณะ getMessage (URL สตริง) พ่น ClientProtocolException, IOException {
al=getMainUrl(ลง(url));
Util.println(อัล);
ถ้า(al.size()==0){
c.นับถอยหลัง();
System.ออก(0);
กลับ;
-
สำหรับ(int i=0;i<al.size();i++){
StringBuffer sb=ใหม่ StringBuffer();
StringBuffer openUrl = ใหม่ StringBuffer();
openUrl.append("http://www.360buy.com/product/");
openUrl.append(al.get(i).toString().subSequence(al.get(i).toString().lastIndexOf('/')+1, al.get(i).toString().lastIndexOf( '.')));
openUrl.ผนวก(".html");
//557673
sb.ผนวก("http://d.360buy.com/fittingInfo/get?skuId=");
sb.append(al.get(i).toString().subSequence(al.get(i).toString().lastIndexOf('/')+1, al.get(i).toString().lastIndexOf( '.')));
sb.append("&callback=Recommend.cbRecoFittings");
Util.println(sb.toString());
//สิ่งที่บันทึกไว้ในแผนที่คือชื่อสินค้า ราคา และข้อมูลส่วนลด
Util.println("Al("+i+") ลง:"+sb.toString());
HashMap<String, String> hm=parseProduct(down(sb.toString()));
//ใช้เพื่อจับคู่ข้อมูลราคา จับคู่ข้อมูลสินค้าคงคลัง
filter(hm,openUrl.toString());//กรองราคาและเปิดเบราว์เซอร์หากตรงตามเงื่อนไข
-
-
-
* วิธีการตรวจสอบ
* @param hm เก็บข้อมูลราคาไว้
* หน้าผลิตภัณฑ์ @param url
-
public void filter(HashMap<String, String> hm,String url){//url คือหน้าผลิตภัณฑ์
//view.Util.oenCMD.openWinExe(null,url);
//เราควรตรวจสอบสินค้าคงคลังก่อนหรือไม่?
สตริง skuidkey=parseSkuidkey(url);
ถ้า(!hasStore(skuidkey)){
Util.println("--------------------------------------------");
Util.println("สินค้าหมด!");
Util.println("--------------------------------------------");
//ลดจำนวนลงเพื่อให้เธรดหลักตัดสินได้
c.นับถอยหลัง();
//เราควรจบกระทู้เด็กดีไหม?
กลับ;
-
if(hm.get("skuid").equals("201602"))//การตัดสิน//Motorola skuid=201602
//ราคาที่นี่เป็นฮาร์ดโค้ดและจำเป็นต้องเปลี่ยนแปลงก่อนเรียกใช้
this.setราคา(499.0f);
// ควรเปิดคอนโซลหรือไม่?
ถ้า(Float.parseFloat(hm.get("ราคา"))<=this.getPrice()){
view.Util.oenCMD.openWinExe (null, url);
-
}else if(hm.get("skuid").equals("675647")){//Tianyu skuid=675647
/////ราคาที่นี่เป็นฮาร์ดโค้ดและจำเป็นต้องเปลี่ยนแปลงก่อนที่จะรัน
//this.setPrice(699.0f);
///// ควรเปิดคอนโซลหรือไม่?
//if(Float.parseFloat(hm.get("ราคา"))<=this.getPrice()){
//view.Util.oenCMD.openWinExe(null,url);
-
-
-
-
* แยกวิเคราะห์ชื่อ สกูด ข้อมูลราคาในหน้าสินค้า
* @paramdoc
* @กลับ
-
HashMap แบบคงที่สาธารณะ parseProduct (เอกสารเอกสาร) {
ข้อความสตริง=doc.text();
สตริง docc=text.substring(text.indexOf("master")+9,text.indexOf("fittings")-3).replaceAll("[//s]", "");
สตริง[] ss=docc.split(",");
HashMap<String, String> hm=ใหม่ HashMap<String, String>();
สำหรับ (สตริง: ss) {
สตริง string=it.replaceAll("/"", "");
ถ้า(string.contains("//u"))
string=unicodeDecode(สตริง);
สตริง[] str=string.split(///);
hm.put(str[0], str[1]);
-
Util.println(ฮม);
กลับมา ฮืม;
-
-
* ประมวลผลอักขระ Unicode และแปลงเป็นอักขระที่แสดง (อักขระจีน) ซึ่งไม่หลากหลายมากนัก
* @param it: /u6a5d
* @กลับ
-
public static String unicodeDecode(String it){//ข้อเสียประการหนึ่งคือไม่สามารถลบอักขระก่อนหน้าได้
Util.println(มัน);
สตริง regex="(//////u[0-9a-f]{4})";
รูปแบบ pt= Pattern.compile(regex);
แมชเชอร์ mc;
StringBuffer sb;
StringBuffer sba=ใหม่ StringBuffer();
mc=pt.matcher(มัน);
ในขณะที่(mc.find()){
sb=ใหม่ StringBuffer();
mc.appendReplacement(sba,sb.append((ถ่าน)Integer.parseInt((mc.group(1).substring(2)), 16)).toString());
-
กลับ sba.toString();
-
-
* คืนวัตถุเอกสาร (เนื้อหาดาวน์โหลด)
* หน้าดาวน์โหลด @param url
* @กลับ
* @พ่น ClientProtocolException
* @throwsIOException
-
เอกสารคงที่สาธารณะลง (URL สตริง) พ่น ClientProtocolException, IOException {
เอกสารเอกสาร = null;
DefaultHttpClient httpClient=ใหม่ DefaultHttpClient();
Util.println("ดาวน์โหลด:"+url);
HttpGet get=ใหม่ HttpGet(url);
การตอบสนอง HttpResponse;
การตอบสนอง = httpClient.execute (รับ);
เอนทิตี HttpEntity = response.getEntity();
doc = Jsoup.parse(entity.getContent(), "utf-8","");
//ปล่อยทรัพยากร
EntityUtils.consume (เอนทิตี);
//ปิดการเชื่อมต่อ
httpClient.getConnectionManager().ปิดเครื่อง();
ส่งเอกสารคืน;
-
-
* เพิ่มข้อมูลการควบคุมการเข้ารหัส
* หน้า URL @param ที่จะดาวน์โหลด
* การเข้ารหัสรหัส @param
* @กลับ
* @พ่น ClientProtocolException
* @throwsIOException
-
เอกสารคงที่สาธารณะลง (URL สตริง, รหัสสตริง) พ่น ClientProtocolException, IOException {
เอกสารเอกสาร = null;
DefaultHttpClient httpClient=ใหม่ DefaultHttpClient();
Util.println("ดาวน์โหลด:"+url);
HttpGet get=ใหม่ HttpGet(url);
การตอบสนอง HttpResponse;
การตอบสนอง = httpClient.execute (รับ);
เอนทิตี HttpEntity = response.getEntity();
doc = Jsoup.parse(entity.getContent(), รหัส,"");
//ปล่อยทรัพยากร
EntityUtils.consume (เอนทิตี);
//ปิดการเชื่อมต่อ
httpClient.getConnectionManager().ปิดเครื่อง();
ส่งเอกสารคืน;
-
-
* ใช้เพื่อแยกวิเคราะห์ลิงก์ผลิตภัณฑ์ (คอลเลกชัน) ในหน้าขายแฟลช
* @paramdoc
* @กลับ
-
ArrayList สาธารณะแบบคงที่ getMainUrl (เอกสารเอกสาร) {
ถ้า(doc.equals("")||doc==null)
กลับเป็นโมฆะ;
พยายาม {
เธรด.สลีป(50);
} จับ (InterruptedException e1) {
// TODO บล็อก catch ที่สร้างขึ้นอัตโนมัติ
e1.printStackTrace();
-
ArrayList<String> urls=new ArrayList<String>();
กฎสตริง = "map[name=Map] >area[href~=product]";
-
* เริ่มแยกวิเคราะห์
-
องค์ประกอบ องค์ประกอบ=doc.select(กฎ);
สำหรับ (องค์ประกอบ e : องค์ประกอบ) {
//Util.println(e.absUrl("abs:href"));
urls.add(e.absUrl("abs:href"));
-
ส่งคืน URL;
-
-
* รับ skuidkey เพื่อสอบถามข้อมูลสินค้าคงคลัง
* @param url
* @กลับ
-
สาธารณะสตริงคงที่ parseSkuidkey (URL สตริง) {
เอกสาร doc=null;
พยายาม {
doc=down(url,"gb2312");
} จับ (ClientProtocolException e) {
// TODO บล็อก catch ที่สร้างขึ้นอัตโนมัติ
e.printStackTrace();
} จับ (IOException จ) {
// TODO บล็อก catch ที่สร้างขึ้นอัตโนมัติ
e.printStackTrace();
-
//Util.println(doc.select("สคริปต์"));
ข้อความสตริง = null;
สำหรับ(องค์ประกอบ e : doc.select("script")){
ถ้า(e.data().contains("skuidkey:")){
ข้อความ=e.data();
หยุดพัก;
-
-
//skuidkey:'7D45919EA8242511DAA5CC7C6D7B351C'
text=text.substring(text.indexOf("skuidkey:")+10, text.indexOf("skuidkey:")+42);
Util.println("---------------------------------");
Util.println(ข้อความ);
ส่งกลับข้อความ;
-
-
* ดูข้อมูลสินค้าคงคลัง
* @param skuidkey
* @กลับ
-
hasStore บูลีนคงที่สาธารณะ (String skuidkey){// สถานที่นี้ไม่ได้รับการประมวลผล ให้แยกข้อมูลในเบราว์เซอร์โดยตรง
ที่อยู่สตริง = null;
บูลีน hasStore=false;
ถ้า(skuidkey!=null && !"".เท่ากับ(skuidkey))
ที่อยู่ = "http://price.360buy.com/stocksoa/StockHandler.ashx?callback=getProvinceStockCallback&type=pcastock&skuid="+skuidkey+"&provinceid=1&cityid=2800&areaid=2850";
อื่น{
Util.println("เกิดข้อผิดพลาดในการแยกวิเคราะห์ skuidkey");
-
พยายาม {
ถ้า (parseStore (ลง (ที่อยู่))) {
hasStore=true;
-
} จับ (ClientProtocolException e) {
// TODO บล็อก catch ที่สร้างขึ้นอัตโนมัติ
e.printStackTrace();
} จับ (IOException จ) {
// TODO บล็อก catch ที่สร้างขึ้นอัตโนมัติ
e.printStackTrace();
-
กลับ hasStore;
-
/* if(array[1]=="34"||array[1]=="18"){
changeCart(เท็จ);
djdarea.stockInfoDom.html("<strong class='store-over'>สินค้าหมด</strong>");
-
อย่างอื่นถ้า(อาร์เรย์[1]=="0"){
changeCart(เท็จ);
djdarea.stockInfoDom.html("<strong class='store-over'>สินค้าหมด</strong>");
-
อย่างอื่นถ้า(array[2]=="0"&&array[4]!="2"){
changeCart(เท็จ);
djdarea.stockInfoDom.html("ขออภัย สินค้านี้ไม่สามารถจัดส่งไปยังพื้นที่ที่คุณเลือกได้");
-
อย่างอื่น if(array[1]=="33"||array[1]=="5"){
changeCart(จริง);
djdarea.stockInfoDom.html("<strong>จุด</strong>"+(array[4]=="1"?", พื้นที่"+(array[3]=="0"?No:: ")+"สนับสนุนเงินสดในการจัดส่ง:"")+เงินสด);
-
อย่างอื่นถ้า(อาร์เรย์[1]=="36"){
changeCart(จริง);
djdarea.stockInfoDom.html("<strong>การจอง</strong>"+(array[4]=="1"?", พื้นที่"+(array[3]=="0"?No:: ")+"สนับสนุนเงินสดในการจัดส่ง:"")+เงินสด);
-
อย่างอื่นถ้า(อาร์เรย์[1]=="39"){
changeCart(จริง);
djdarea.stockInfoDom.html("<strong>อยู่ระหว่างทาง</strong>"+(array[4]=="1"?", the area"+(array[3]=="0"?"No": " ")+"สนับสนุนเงินสดในการจัดส่ง:"")+เงินสด);
-
อย่างอื่นถ้า(อาร์เรย์[1]=="40"){
changeCart(จริง);
djdarea.stockInfoDom.html("<strong>พร้อมจำหน่าย</strong>"+(array[4]=="1"?", พื้นที่นี้"+(array[3]=="0"?"No" :"")+"สนับสนุนเงินสดในการจัดส่ง"")+เงินสด);
-
-
-
* แยกวิเคราะห์ข้อมูลสินค้าคงคลัง
* @paramdoc
* @กลับ
-
parseStore บูลีนคงที่สาธารณะ (เอกสารเอกสาร) {
ข้อความสตริง=doc.text();
สตริง docc=text.substring(text.indexOf("-")-1,text.lastIndexOf(",")-1);
Util.println(เอกสาร);
สตริง[] store=docc.split("-");
if(store[1].equals("34") || ร้านค้า[1].equals("18")){
//สินค้าหมด
Util.println("สินค้าหมดที่นี่");
กลับเท็จ;
}else if(store[1].equals("33") || ร้านค้า[1].equals("5")){
//สปอตสินค้า
Util.println("มีสินค้าในสต็อกที่นี่");
กลับเป็นจริง;
-
Util.println(ร้านค้า[1]);
กลับเท็จ;
-
// วิธีการถั่วหลายวิธี
getPrice ลอยสาธารณะ () {
ราคาไปกลับ;
-
โมฆะสาธารณะ setPrice(ราคาลอยตัว) {
this.price = ราคา;
-
getDiscount สาธารณะลอย () {
ส่วนลดการคืน;
-
โมฆะสาธารณะ setDiscount (ส่วนลดลอยตัว) {
this.discount = ส่วนลด;
-
-
oenCMD.java
คัดลอกรหัสรหัสดังต่อไปนี้:
มุมมองแพ็คเกจการใช้งาน;
oenCMD คลาสสาธารณะ {
// โมฆะสาธารณะคงหลัก (สตริง [] args) {
///// openWinExe(null);
// openExe(null,"http://www.baidu.com");
-
//ใช้ Java เพื่อเรียกไฟล์ exe ของระบบ windows เช่น notepad, calc เป็นต้น
โมฆะสาธารณะ openWinExe แบบคงที่ (คำสั่ง String, URL ของสตริง) {
if(command==null ||command.equals("")){
คำสั่ง = "chrome "+url;
-
รันไทม์ rn = Runtime.getRuntime();
กระบวนการ p = null;
พยายาม {
p = rn.exec (คำสั่ง);
} จับ (ข้อยกเว้นจ) {
System.out.println("ข้อผิดพลาดในการชนะผู้บริหาร!");
-
-
//เรียกไฟล์ปฏิบัติการอื่นๆ เช่น exe ที่สร้างขึ้นเอง หรือซอฟต์แวร์ที่ดาวน์โหลดและติดตั้ง
โมฆะสาธารณะ openExe แบบคงที่ (String pathAndName, String url) {
ถ้า(pathAndName==null || pathAndName.equals("")){
pathAndName="C://Users//Administrator//AppData//Local//Google//Chrome//Application//chrome.exe";
-
ถ้า(url!=null && !url.equals("")){
pathAndName+=" ";
pathAndName+=url;
-
รันไทม์ rn = Runtime.getRuntime();
กระบวนการ p = null;
พยายาม {
p = rn.exec (เส้นทางและชื่อ);
} จับ (ข้อยกเว้นจ) {
System.out.println("ข้อผิดพลาดในการดำเนินการ!");
-
-
-