1 Star 0 Fork 10

return0 / qtbase

forked from TKG / QtBase 
加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
该仓库未声明开源许可证文件(LICENSE),使用请关注具体项目描述及其代码上游依赖。
克隆/下载
base.h 3.62 KB
一键复制 编辑 原始数据 按行查看 历史
/****************************************************************************
** @copyright TinKinG
** @contract lsnbing@126.com
**
** @brief 一些常用函数
** @file base.h
** @author TinKinG
** @date 2016-06-07
**
** 需开启C++11支持
** QMAKE_CFLAGS += -std=c99
** QMAKE_CXXFLAGS += -std=c++11
** 需加入network模块
**
*****************************************************************************/
#ifndef BASE_H
#define BASE_H
#include <QMap>
#include <QList>
#include <QString>
#include <QVector>
#include <QStringList>
#include <QMessageBox>
#include <QDebug>
#ifndef TKG_ON
#define TKG_ON 1
#endif
#ifndef TKG_OFF
#define TKG_OFF 0
#endif
#define TKG_ERROR "ERR"
#define TKG_WARN "WAR"
#define TKG_INFO "INF"
#define STYLE_GREEN "<span style='color:green'>%1</span>"
#define STYLE_RED "<span style='color:red'>%1</span>"
#define HTTP_KEY_REFERER "Referer"
#define HTTP_KEY_X_REQUESTED_WITH "X-Requested-With"
#define HTTP_VALUE_REQUEST_XML "XMLHttpRequest"
#define HTTP_VALUE_REQUEST_SWF "ShockwaveFlash/22.0.0.192"
#define HTTP_USER_AGENT "Mozilla/5.0 (Windows NT 6.1) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/52.0.2840.71 Safari/537.36"
/*
* Log输出
*/
#ifndef G_DEBUG
#define G_DEBUG QObject::tr(__FILE__) << QObject::tr("%1").arg(__LINE__)
#endif
#ifdef MODEL_DEBUG_CMP
# ifndef tkgDebug
# define tkgDebug(ss) (qDebug() << G_DEBUG << ss)
# endif
#else
# ifndef tkgDebug
# define tkgDebug(ss) (0) // 展开后都是局部变量,同一函数多次使用没问题
# endif
#endif
#define Q_CS(s) ((s).toStdString().c_str())// QString转标准字符串
/*
* QString多格式输出<<
*/
class QByteArray;
class QNetworkAccessManager;
class QNetworkReply;
typedef QMap<QString,QString> Header;
// 显示模态对话框(可选择使用原生的对话框QMessageBox::information...)
int showMessagebox(const QString &title, const QString &text, int icon);
// 显示非模态对话框
void showMessageWithUnmode(const QString &title, const QString &text, int icon, QWidget *parent = 0);
// 访问重定向的最终结果
QByteArray gAccessResult(QNetworkAccessManager *manager, const QString & url,const Header &refer=Header(), const QByteArray & array=0);
// 返回网址的直接reply(非重定向)
QNetworkReply * gAccessReply(QNetworkAccessManager *manager, const QString & url,const Header &refer = Header(),const QByteArray & array=0);
// 获取1970.1.1 08:00 至今的毫秒数
QString getTime();
// 获取Unix的秒数
QString getUnixTime(int expires_s);
// KEY-MD5码
QString hmacSha1(QByteArray key, QByteArray baseString);
// 获取文件MD5值(md5sum相同计算值)
QString getHashMd5(const QString &filePath);
// 获取文件内容MD5
QString getHashMd5(const QByteArray &data);
// 单实例进程
bool assumeSingleInstance(const char* program);
// GUI非阻塞休眠
void g_mySleep(float sec);
// 在当前工作路径创建目录
QString createDirWithName(const QString &dir_name);
// 得到一个工作路径下的文件名的绝对路径(如果没有则创建)
QString getAbsoluteFileName(const QString &path,const QString fileName);
// 保存一个完成的路径名(需要完整的URL,仅适合小文件如网页等)
bool downFile(const QString &url, const QString &absolutePathAndName);
QStringList calc_ByteCount_FileCount_DirCount(const QString &path,bool isLink = false);
bool createHideDir(const QString &path);
bool createDirLink(const QString &path,QString dstFullPath);
QStringList findFile(const QString &path,const QString &fileName);
#endif // BASE_H
C++
1
https://gitee.com/zengfanbin/base.git
git@gitee.com:zengfanbin/base.git
zengfanbin
base
qtbase
master

搜索帮助

53164aa7 5694891 3bd8fe86 5694891