2011-10-14 32 views

Trả lời

3

QML không có tệp I/O được tích hợp sẵn. Nhưng - đánh giá từ giai điệu của bài đăng của bạn - bạn đã biết điều đó.

Làm thế nào để đọc nội dung tập tin trong QML?

Bạn có thể mở rộng chức năng QML bằng cách sử dụng C++.

Các Getting Started Programming with QML hướng dẫn từ các tài liệu tham khảo Qt cho bạn thấy làm thế nào để xây dựng một trình soạn thảo văn bản. Điều này bao gồm tệp I/O sử dụng C++.

Tại sao không có tập tin I/O?

Vì QML được dựa trên JavaScript, và JavaScript không có built-in tập tin I/O trong hai.

QML được thiết kế như một cách dễ dàng để xây dựng giao diện người dùng. Bạn cần một chương trình thực tế để làm phần còn lại.

8

Nếu tệp của bạn là văn bản thuần túy, bạn có thể sử dụng XMLHttpRequest. Ví dụ:

var xhr = new XMLHttpRequest; 
xhr.open("GET", "mydir/myfile.txt"); 
xhr.onreadystatechange = function() { 
    if (xhr.readyState == XMLHttpRequest.DONE) { 
     var response = xhr.responseText; 
     // use file contents as required 
    } 
}; 
xhr.send(); 
+1

Điều này cũng hoạt động đối với các định dạng văn bản thuần khác, ví dụ: json – OlliM

+0

đây là câu trả lời không tốt và phải bao gồm mã mẫu thay vì liên kết (có khả năng đã chết/chết). – khaverim

0

Bạn muốn đọc tệp gì? ... nếu dữ liệu đơn giản của nó .. thì có thể bạn nên sử dụng API lưu trữ ngoại tuyến QML. Look for that section here.

Nếu bạn muốn triển khai một db với ứng dụng của bạn đọc this conversation.

Nếu bạn thực sự muốn đọc tệp, hãy tìm hiểu C++ và hiển thị mã của bạn cho QML. Điều đó, sau đó, nằm ngoài phạm vi câu trả lời của tôi.

Các vấn đề liên quan