QT的控制台的输出用qDebug包含头文件
#include<QDebug>
c++形式 qDebug()<<“hello”<<'\n';
c形式 qDebug(“hello\n”);
QT简单的目录操作
//获取绝对路径my_dir.absolutePath();
//foreach是Qt中对c++中增加的关键字,foreach (variable, container)
//其意思是访问遍历第2个参数容器中的所有内容,每次都存入第1个参数变量中
//QDir::drives()是列出电脑根目录下的所有目录,返回的是QFileInfoList
//QFileInfo::absoluteFilePath为返回绝对路径,包括名字
//my_dir.mkpath(mkdir);创建路径父路径不存在创建父路径
//my_dir.mkdir(mkdir);创建路径父路径不存在创建失败
//my_dir.rmpath (mkdir);移除路径
//my_dir.rmdir (mkdir);移除目录
//my_dir.setPath("C:/");设置路径
//my_dir.setCurrent("/tmp")设置当前路径
//QFileInfoList QDir::entryInfoList()为列出其路径下的所有文件和目录信息。
//bool QFileInfo::isDir()是判断其是否为目录,同理
//bool QFileInfo::isFile()是判断其是否为文件
QApplication a(argc, argv);
QDir my_dir;
qDebug() << my_dir.absolutePath();
//my_dir.absolutePath();
//foreach是Qt中对c++中增加的关键字,foreach (variable, container)
//其意思是访问遍历第2个参数容器中的所有内容,每次都存入第1个参数变量中
//QDir::drives()是列出电脑根目录下的所有目录,返回的是QFileInfoList
foreach(QFileInfo my_info, my_dir.drives())
{
//QFileInfo::absoluteFilePath为返回绝对路径,包括名字
qDebug() << my_info.absoluteFilePath();
}
// qDebug() << my_dir.exists();
QString mkdir = "C:/QtTest/zzz";
//如果指定的路径不存在时
if(!my_dir.exists(mkdir))
{
//给my_dir创建一个路径
my_dir.mkpath(mkdir);
qDebug() << "Created successed!";
}
//指定的路径存在时
else {
my_dir.rmpath (mkdir);
qDebug() << "Alreadly exists!";
}
//QDir my_dir1("C:/");
my_dir.setPath("C:/");
//QFileInfoList QDir::entryInfoList为列出其路径下的所有文件和
//目录信息。bool QFileInfo::isDir是判断其是否为目录,同理
//bool QFileInfo::isFile是判断其是否为文件
foreach(QFileInfo my_info, my_dir.entryInfoList())
{
if(my_info.isDir())
qDebug()<< "Dir: "<<my_info.absoluteFilePath();
if(my_info.isFile())
qDebug()<< "File: "<<my_info.absoluteFilePath();
}
QT的简单文件操作:
//QFile file
//直接初始化file("draw.txt");或者file.setFileName("draw.txt");都是在相对路径下
//文件打开不存在就创建
//打开文件方式QIODevice::ReadOnly 打开方式只读
//QIODevice::WriteOnly 打开方式只写
//QIODevice::ReadWrite 打开方式可写可读
//QIODevice::Append 打开后在文件指针指向文件末尾
//QIODevice::Truncate 打开文件清空文件
//file.close(); 文件的关闭
//file("draw.txt");
QFile file;
file.setFileName("draw.txt");
if(file.exists ())
{
file.open(QIODevice::WriteOnly| QIODevice::Append);
QTextStream out(&file);
out << "The magic number is: " << 49 << "\n";
}else{
file.open(QIODevice::WriteOnly| QIODevice::Append);
QTextStream out(&file);
out << "The magic number is: " << 49 << "\n";
}
file.close();
QT文件的读写操作
//QTextStream和QDataStream都是面向数据流的
//QTextStream侧重于文本
//QDataStream侧重于字节流
QFile file;
file.setFileName("draw.txt");
file.open(QIODevice::WriteOnly);
QTextStream out1(&file);
out1<<49<<' '<<3.14<<' '<<'c'<<endl;
file.close();
file.setFileName("draw.txt");
file.open(QIODevice::ReadOnly);
QTextStream out2(&file);
int x;
float y;
char m;
out2>>x>>m>>y>>m>>m;
qDebug()<<x<<y<<m;
file.close();
QString QStringList 的简单用法
//QString的用法
//str.append ("hello");向后添加函数
//str.sprintf ("%s,%d","hello",3);格式化字符串
//str = QString("%1 %2 (%3s-%4s)") .arg("live").arg("age").arg(1950).arg(1970);
//QString::number(59.6);等价于str.setNum(59.6);数字转化成字符串
//double d = str.toDouble();字符串转化成长浮点型
//toInt(), toLongLong(), toDouble()
QString str="3.14 ";
str+="3.24";
QStringList strlist=str.split (" ");
//等价于
// str.append ("hello");
// str.sprintf ("%s,%d","hello",3);
// str = QString("%1 %2 (%3s-%4s)") .arg("live").arg("age").arg(1950).arg(1970);
// str = QString::number(59.6);
// str = str.setNum(59.6666);
// double d = str.toDouble();
// qDebug()<<str.length ()<<str<<d;
// qDebug()<<str.length ()<<str;
for (int i = 0; i < strlist.size(); ++i){
double d=strlist.at(i).toDouble();
qDebug() <<d<< endl;
}