tôi đang làm việc trên đoạn mã sau:Viết vào một tập tin XML trong Java
import java.io.*;
import javax.xml.parsers.*;
import javax.xml.transform.*;
import javax.xml.transform.dom.*;
import javax.xml.transform.stream.*;
import org.w3c.dom.*;
public class CreatXMLFile {
public static void main(String[] args) throws Exception {
BufferedReader bf = new BufferedReader(new InputStreamReader(System.in));
// System.out.print("Enter number to add elements in your XML file: ");
// String str = bf.readLine();
int no=2;
// System.out.print("Enter root: ");
String root = "SMS";
DocumentBuilderFactory documentBuilderFactory =DocumentBuilderFactory.newInstance();
DocumentBuilder documentBuilder =documentBuilderFactory.newDocumentBuilder();
Document document = documentBuilder.newDocument();
Element rootElement = document.createElement(root);
document.appendChild(rootElement);
// for (int i = 1; i <= no; i++)
// System.out.print("Enter the element: ");
// String element = bf.readLine();
String element ="Number";
System.out.print("Enter the Number: ");
String data = bf.readLine();
Element em = document.createElement(element);
em.appendChild(document.createTextNode(data));
rootElement.appendChild(em);
String element1 ="message";
System.out.print("Enter the SMS: ");
String data1 = bf.readLine();
Element em1 = document.createElement(element1);
em1.appendChild(document.createTextNode(data1));
rootElement.appendChild(em1);
TransformerFactory transformerFactory = TransformerFactory.newInstance();
Transformer transformer = transformerFactory.newTransformer();
DOMSource source = new DOMSource(document);
StreamResult result = new StreamResult(System.out);
transformer.transform(source, result);
}
}
Và nó mang lại kết quả như sau:
run:
Enter the Number: 768678
Enter the SMS: ytu
<?xml version="1.0" encoding="UTF-8" standalone="no"?><SMS><Number>768678</Number><message>ytu</message></SMS>BUILD SUCCESSFUL (total time: 8 seconds)
Bây giờ tôi muốn viết đầu ra được tạo ra (<?xml version="1.0" encoding="UTF-8" standalone="no"?><SMS><Number>768678</Number><message>ytu</message></SMS>
) vào một tệp XML trên đĩa cứng. Tôi phải làm nó như thế nào?
** đọc tài liệu cho XML của bạn - lớp: ** bạn cần phải làm điều này: .., mở tập tin, chuyển đổi XML để chuỗi và viết chuỗi thành tệp, đóng tệp. – lexu
@lexu: Bạn không cần chuyển đổi nó thành Chuỗi trước tiên. Thư viện XML có thể truyền trực tiếp vào một tệp. – Thilo
@Thilo. bạn có thể giúp tôi không? Tôi vẫn không nhận được cách làm. – Ishan