我正在尝试为用户提供一个网站,以键入有关他们自己的信息,并最终生成供他们下载的Json文件。我可以使用Java来创建它,但是我需要一些帮助,将其变成网站供用户使用。
此外,如果有什么办法,我可以仅使用JS,HTML和CSS来做到这一点。
import java.io.FileWriter;
import java.io.IOException;
import java.util.Scanner;
import org.json.simple.*;
public class JsonFile {
@SuppressWarnings("unchecked")
public static void main(String[] args) {
@SuppressWarnings("resource")
Scanner scan = new Scanner(System.in);
System.out.println("Enter ID: ");
int id_Input = scan.nextInt();
System.out.println("Enter First Name: ");
String firstname_Input = scan.next();
System.out.println("Enter Last Name: ");
String lastname_Input = scan.next();
JSONObject patient = new JSONObject();
patient.put("id", id_Input);
patient.put("firstName", firstname_Input);
patient.put("lastName", lastname_Input);
System.out.println("Enter Father's First Name: ");
String firstname_father = scan.next();
System.out.println("Enter Father's Last Name: ");
String lastname_father = scan.next();
JSONObject father = new JSONObject();
father.put("firstName", firstname_father);
father.put("lastName", lastname_father);
JSONArray list = new JSONArray();
list.add(patient);
list.add(father);
try(FileWriter file = new FileWriter("testJSON.json")) {
file.write(list.toString());
file.flush();
}
catch(IOException e) {
e.printStackTrace();
}
}
}
答案 0 :(得分:0)
根据我的理解,您需要根据用户输入来转换JSON。使用下面的示例代码。可能会对您有帮助。
<html>
<input type="text" id="txtid" value="Enter id"/>
<input type="text" id="txtfirstname" value="Enter first name"/>
<input type="text" id="txtlastname" value="Enter last name"/>
<input type="button" value="Display" id="btnDisplay" onclick="output()"/>
<script>
function output(){
//Data collector
var oData=[];
//Local Data object initialization
var local={
id:document.getElementById("txtid").value,
firstname:document.getElementById("txtfirstname").value,
lastname:document.getElementById("txtlastname").value
};
//Push data in data collector
oData.push(local);
//Convert data in json format string
var output=JSON.stringify(oData).toString();
//Data output
document.write("<h1>"+ output +"</h1>")
download("testfile.txt",output)
}
function download(filename, text) {
var element = document.createElement('a');
element.setAttribute('href', 'data:text/plain;charset=utf-8,' + encodeURIComponent(text));
element.setAttribute('download', filename);
element.style.display = 'none';
document.body.appendChild(element);
element.click();
document.body.removeChild(element);
}
</script>
</html>
//**Paste this code in HTML file and run**.
//This is simple example for your reference only.