QT5 GPT-base64解码
GPT提问:
Qt 读取每一行txt,并依次进行base64解密
GPT回答:
我修改后比较合适的代码:
#include <QCoreApplication>
#include <QFile>
#include <QTextStream>
#include <QByteArray>
#include<QDebug>
int main(int argc, char *argv[])
{
QCoreApplication a(argc, argv);
// 打开要读取的 txt 文件
QFile inputTxtFile("input.txt");
if (!inputTxtFile.open(QIODevice::ReadOnly | QIODevice::Text)) {
qDebug() << "Failed to open input file";
return -1;
}
QTextStream inputStream(&inputTxtFile);
// 打开要写入的 txt 文件
QFile outputTxtFile("output.txt");
if (!outputTxtFile.open(QIODevice::WriteOnly | QIODevice::Text)) {
qDebug() << "Failed to open output file";
return -1;
}
QTextStream outputStream(&outputTxtFile);
qDebug()<<"开始解码:"<<endl;
int count=0;
// 逐行读取并解密
while (!inputStream.atEnd()) {
QString line = inputStream.readLine();
qDebug()<<"已解码"<<++count<<"行"<<endl;
QByteArray decodedData = QByteArray::fromBase64(line.toUtf8());
QString decodedString = QString::fromUtf8(decodedData);
outputStream << decodedString << endl;
}
// 关闭文件
inputTxtFile.close();
outputTxtFile.close();
return 0;
}
运行情况
QT5 GPT-base64编码
#include <QCoreApplication>
#include <QFile>
#include <QTextStream>
#include <QByteArray>
#include<QDebug>
int main(int argc, char *argv[])
{
QCoreApplication a(argc, argv);
// 打开要读取的 txt 文件
QFile inputTxtFile("input.txt");
if (!inputTxtFile.open(QIODevice::ReadOnly | QIODevice::Text)) {
qDebug() << "Failed to open input file";
return -1;
}
QTextStream inputStream(&inputTxtFile);
// 打开要写入的 txt 文件
QFile outputTxtFile("output.txt");
if (!outputTxtFile.open(QIODevice::WriteOnly | QIODevice::Text)) {
qDebug() << "Failed to open output file";
return -1;
}
QTextStream outputStream(&outputTxtFile);
qDebug()<<"开始编码:"<<endl;
int count=0;
// 逐行读取并解密
while (!inputStream.atEnd()) {
QString line = inputStream.readLine();
qDebug()<<"已编码"<<++count<<"行"<<endl;
QByteArray EncodedData = line.toUtf8().toBase64();
QString encodedString = QString::fromUtf8(EncodedData);
outputStream << encodedString << endl;
qDebug()<<encodedString<<endl;
}
// 关闭文件
inputTxtFile.close();
outputTxtFile.close();
return 0;
}