วิธีการสวย ๆ ในการแยกวิเคราะห์ไฟล์ฟีเจอร์ของ JSON



Gherkin เป็นรูปแบบภาษาอังกฤษธรรมดาที่สามารถเข้าใจแตงกวาในการทดสอบระบบอัตโนมัติ ภาษาของไฟล์คุณลักษณะของ Gherkin เป็นภาษาเฉพาะของธุรกิจที่สามารถอ่านได้ของโดเมน

รหัสนี้คือการแปลงไฟล์คุณสมบัติ Gherkin ของคุณให้เป็นรูปแบบ JSON ตามกรอบการทำงานของ JSON Formatter

Gherkin ถึง JSON Parser Main

// ไฟล์คุณสมบัติ Gherkin เป็น JSON ที่แปลงคลาสหลัก

คลาสสาธารณะ GToJRun {

// ที่นี่ตั้งค่าเส้นทาง Gherkin เพื่อดึงข้อมูลคุณสมบัติไฟล์และเส้นทางไฟล์ JSON เป็น

// เขียนลงในรูปแบบ JSON

String คงที่ส่วนตัว featurePath =“ c: \ Json \ login.feature”;

String คงที่ส่วนตัว jasonPath =“ c: \ Json \ login.json”;

// ตั้งเป็นรูปแบบสวย / น่าเกลียดสำหรับเอาท์พุท JSON โดยค่าเริ่มต้นมันสวย

GtoJCore คงที่ testG = ใหม่ GtoJCore (“ สวย”);

โมฆะคงที่สาธารณะหลัก (String [] args) {

testG.gherkinTojson (featurePath, jasonPath);

}

}

ชั้นแกนจะขึ้นอยู่กับกรอบการจัดรูปแบบ JSON คุณสามารถรับเวลาแปลงหากคุณต้องการตรวจสอบเวลาการประมวลผลทั้งหมดสำหรับไฟล์คุณลักษณะที่ใหญ่กว่า

Gherkin กับ JSON Parser Core

นำเข้า java.io.FileInputStream;

นำเข้า java.io.FileNotFoundException;

นำเข้า java.io.FileWriter;

นำเข้า java.io.IOException;

นำเข้า java.io.InputStreamReader;

นำเข้า java.io.UnsupportedEncodingException;

นำเข้า gherkin.formatter.JSONFormatter;

นำเข้า gherkin.formatter.JSONPrettyFormatter;

นำเข้า gherkin.parser.Parser;

gherkin.util.FixJava นำเข้า

// Gherkin ไปยังไฟล์หลักของตัวแยกวิเคราะห์ Json

คลาสสาธารณะ GtoJCore {

รูปแบบสตริงส่วนตัว

// เพื่อรับเวลาทำงานทั้งหมด (ไม่บังคับ)

long startTime = System.currentTimeMillis ();

สาธารณะ GtoJCore (สตริง outFormat) {

this.format = outFormat;

}

ประชาชน String getOutFormat () {

รูปแบบการส่งคืน;

}

โมฆะสาธารณะ gherkinTojson (String fPath, String jPath) {

// กำหนดไฟล์คุณสมบัติและเส้นทางไฟล์ JSON

String gherkin = null;

ลอง {

gherkin = FixJava.readReader (InputStreamReader ใหม่ (

ใหม่ FileInputStream (fPath), “ UTF-8”));

} catch (FileNotFoundException e) {

System.out.println (“ ไม่พบไฟล์คุณสมบัติ”);

// e.printStackTrace ();

} catch (UnsupportedEncodingException e) {

e.printStackTrace ();

} catch (RuntimeException e) {

e.printStackTrace ();

}

StringBuilder json = ใหม่ StringBuilder ();

ตัวจัดรูปแบบ JSONFormatter;

// การเลือกสวยหรือน่าเกลียดโดยค่าเริ่มต้น

if (format.equalsIgnoreCase (“ ugly”)) {

formatter = new JSONFormatter (json); // ไม่สวย

} อื่น {

formatter = new JSONPrettyFormatter (json); // pretty

}

Parser parser = ตัวแยกวิเคราะห์ใหม่ (ตัวจัดรูปแบบ);

parser.parse (gherkin, fPath, 0);

formatter.done ();

formatter.close ();

System.out.println (“ json เอาต์พุต: n” + json +“ '”);

// ในที่สุดก็ล้างออกและปิด

ลอง {

FileWriter file = new FileWriter (jPath);

file.write (json.toString ());

file.flush ();

file.close ();

} catch (IOException e) {

e.printStackTrace ();

}

long endTime = System.currentTimeMillis ();

//ไม่จำเป็น

System.out.println (“ n เวลาทำงานทั้งหมด:” + (endTime - startTime)

+” มิลลิวินาที”);

}

}

นี่เป็นรูปแบบ JSON ที่สวยหรือน่าเกลียดที่คุณสามารถเลือกได้จากคลาสหลัก คุณสามารถกำหนดพา ธ ไฟล์ทั้งสองเพื่อให้ฟีเจอร์ไฟล์อ่านและไฟล์ JSON เพื่อเขียนพร้อมตัวเลือกในการเลือกรูปแบบเอาต์พุตที่สวย

บทความก่อนหน้านี้

Google Authenticator vs. Authy: ไหนดีกว่าและทำไม

Google Authenticator vs. Authy: ไหนดีกว่าและทำไม

ไม่ว่าคุณจะใช้อินเทอร์เน็ตเพื่อซื้อหุ้นสกุลเงินหรือลงทุนในอย่างอื่นหรือคุณใช้เพื่อซื้อสินค้าใน Amazon ข้อมูลของคุณมีความเสี่ยง เมื่อฉันพูดข้อมูลมันไม่ได้รวมเฉพาะข้อมูลทางการเงินของคุณเช่นรายละเอียด CC หมายเลข SSN และรายละเอียดบัญชีธนาคาร แต่ยังรวมถึงชื่อที่อยู่และรหัสอีเมลของคุณ เพื่อตอบโต้การแฮ็กเหล่านี้ 2FA ถูกสร้างขึ้นเพื่อเพิ่มระดับความปลอดภัยเพิ่มเติม สำหรับมือใหม่ 2FA หมายถึงการรับรองความถูกต้อง 2 ปัจจัยซึ่งหลังจากป้อน ID และรหัสผ่านของคุณคุณจะต้องป้อนรหัส 6 หลักที่จะหมดอายุภายในระยะเวลาที่กำหนด รหัสนี้สามารถรับได้ทาง SMS หรือสร้างขึ้นโดยใช้แอพเช่น Authy และ Google Authenticator การใช้แอพ...

บทความถัดไป

Apple iPhone 6 กับ Samsung Galaxy S6 กับ HTC One M9

Apple iPhone 6 กับ Samsung Galaxy S6 กับ HTC One M9

สมาร์ทโฟนรุ่นพรีเมี่ยมใหม่เปิดตัวในวันที่ 1 มีนาคม 2558 ในช่วงเริ่มต้นของ Mobile World Congress 2015 ที่บาร์เซโลนาโดยผู้เล่นยอดนิยมสองคนเช่น Samsung และ HTC ซัมซุงได้เปิดเผยโทรศัพท์เรือธงของพวกเขา Samsung Galaxy S6 และ Samsung Galaxy S6 Edge ในขณะที่ HTC เปิดตัวโทรศัพท์เรือธงของพวกเขา HTC One M9 โทรศัพท์เหล่านี้อาจให้การแข่งขันกับ Apple iPhone 6 ที่เป็นที่นิยมอยู่แล้วในสเปคและสร้างความฉลาดเนื่องจากเป็นโทรศัพท์สมาร์ทโฟนประเภทโลหะเต็มรูปแบบเช่น iPhone 6 ทั้ง Samsung Galaxy S6 และ HTC One M9 ออกมาพร้อมกับ Android OS รุ่น Lollipop หรือ Android 5. แม้ว่าโทรศัพท์รุ่นนี้จะตอบสนองผู้คนหลากหลายประเภทในต...