파일에서 유니 코드를 읽고 QTextEdit에 해당 데이터를 표시하고 싶습니다. 제안을 해주십시오.파일에서 유니 코드를 읽고 QTextEdit에 데이터를 표시하는 방법은 무엇입니까?
답변
귀하의 질문은 조금 가난하지만, 다음과 같이이를 위해 Qfile을하고은 QTextEdit를 사용해야합니다 :
QFile file("in.txt");
if (!file.open(QIODevice::ReadOnly | QIODevice::Text))
return;
QTextStream in(&file);
while (!in.atEnd())
myTextEdit.append(in.readLine());
를하거나 거대한 파일 작은 메모리를 처리하지 않을 경우, 파일을 읽을 수 있습니다 전체의 라인과 청크를 읽지 않고 :
QFile file("in.txt");
if (!file.open(QIODevice::ReadOnly | QIODevice::Text))
return;
myTextEdit.setText(file.readAll());
// or setPlainText(file.readAll());
이 몇 가지 있습니다 on the documentation.
에 기반 기본적으로 유니 코드로 데이터를 읽 방법을 사용하는 것이므로이 대답은 단지 당신에게 약간의 맛을 전합니다. 그리고 당신은 당신의 특정한 시나리오에 기초하여 이것을 미세하게 조정할 필요가 있습니다. 적절한 오류 처리, 포함, 시스템 파일 빌드 등을 추가해야합니다.
나는 이것을 시도했다. 그러나 실제로 파일 데이터를 읽는 중이며, 파일에서 유니 코드를 읽고 textedit에 해당 텍스트를 표시해야한다. – QtUser
@QtUser : 당신이 시도한 것을 질문에 말해야합니다. 귀하의 질문은 현재 매우 가난합니다, 나는 두렵습니다. 어느 쪽이든, QString :: fromUtf8을 살펴보십시오. – lpapp
처음에는 "간단한"유니 코드와 같은 것이 있지만 유니 코드를 기반으로하는 코덱은 없습니다. UTF-8, UTF-16 등. 텍스트 파일에 사용되는 코덱을 알아야합니다. 텍스트 파일이 UTF-8로 코딩되었다고 가정하면 Laszlo의 접근 방식을 사용할 수 있으며 textstream에 코덱을 설정해야합니다. in.setCodec ("UTF-8"); – MichaelXanadu
질문하실 수는 있지만 http://stackoverflow.com/help/on-topic을 참조하십시오. – embert
자세한 정보를 제공해주십시오. 우리는 프로그램에서 무엇이 잘못되었는지를 알려줄 수 있습니다. 우리에게 당신의 코드의 일부분이 도움이 될 것임을 보여주십시오. – Tay2510
코드를 복사 할 수 없습니다. 코드를 복사하는 방법을 알려주시겠습니까? – QtUser