qt字串與字串陣列操作

2021-09-12 13:34:52 字數 3113 閱讀 7334

//qstring定義

qstring s1 = 「abc」;

qstring s2(「hello」);

/## /字串連線

qstring s = s1 + s2;

//組包

s = qstring(「a = %1, b = %2, c = %3」).arg(250).arg(「hello」).arg(22.22);

qdebug()//引數表示按逗號分隔, 拆分出第0段到第1段, 儲存到tmp

qstring tmp = s.section(",", 0, 1);

qdebug()<<"tmp = "qdebug()<<「tmp=」<//qstring轉int

int a = tmp.toint();

qdebug()<<「a=」<//int轉qstring組包方式轉

tmp = qstring("%1").arg(123);

qdebug()<<「tmp=」<//int轉qstring函式方式轉

tmp = qstring::number(234);

*//char 轉qstring

const char * buf = 「hello, world」;

qstring ss = buf;

qdebug()<<"ss = "<< ss;

//std::string轉qstring

string s = 「hello, world」

qstring ss = qstring::fromstdstring(s);

qdebug()<<"ss = "<< ss;

//std::wstring轉qstring

std::wstring wstr(l"你好, 世界");

qstring ss = qstring::fromstdwstring(wstr);

qdebug()<<"ss = "<< ss;

//字元陣列轉qstring

char buf2[100] = 「hello world」;

ss = buf2;

qdebug()<<"ss = "<**//qstring轉char ***

ss = 「hello abc」;

//如果沒有中文:

qbytearray tmp = ss.tolatin1();

char * buf3 = tmp.data();

//如果有中文:

qbytearray tmp = ss.tolocal8bit();

char * buf4 = tmp.data();

//替換qstring中字串

qstring text(「text-decoration: none」);

text.replace(「none」, 「underline」);

//去除qstring首尾的空格(包括』\t』, 『\n』, 『\v』, 『\f』, 『\r』)

qstring text(" text-decoration: none ");

text = text.trimmed();

//判斷qstring是否空

qstring().isempty(); // return true

qstring("").isempty(); // return true

qstring(" ").isempty(); // return false

qstring(「abc」).isempty(); // return false

qstring().isnull(); // return true

qstring("").isnull(); // return false

qstring(" ").isnull(); // return false

qstring(「abc」).isnull(); // return false

qstringlist

//定義

qstringlist list;

//新增字串

qstringlist chinamonth;

chinamonth

<< qstringliteral(「正月」)

<< qstringliteral(「二月」)

<< qstringliteral(「三月」)

<< qstringliteral(「四月」)

<< qstringliteral(「五月」)

<< qstringliteral(「六月」)

<< qstringliteral(「七月」)

<< qstringliteral(「八月」)

<< qstringliteral(「九月」)

<< qstringliteral(「十月」)

<< qstringliteral(「冬月」)

<< qstringliteral(「臘月」)

;//列印

qdebug()<< 「list =」<< list;

//遍歷

for(int i = 0; i< list.size();++i)

//使用qstringlist拆分qstring

qstring str = 「hello,world,abc,qt」;

qstringlist list2 = str.split(",");

qdebug()<<「list2=」<//判斷qstringlist中是否包含某個成員

bool b = list2.contains(「123」);

//移除qstringlist中的成員

list2.removeone(「abc」);

Qt操作字串

1.例 qstring str1 hello qstring str2 str1 world str2 hello world qstring str1 hello 3.qstring sprintf 例 qstring str str.sprintf s s hello world 4.qstri...

字串常量與字串陣列

1 對於 字串,必以 0 結尾,如果是雙引號會在它所包含內容後面自動加乙個 0 且會佔據位元組數。2 字元陣列中若不指定長度,系統會自動分配 char str1 abcde 1,字串常量 char str2 abcde 2,字元陣列,在分配位元組時會在最後加上 0 3 字串 常量的值 不能被修改 因...

字串,字串陣列,字串指標!!

字串 字元陣列實際上是一系列字元的集合,也就是 字串 string 字串陣列 在c語言中,沒有專門的字串變數,沒有string型別,通常就用乙個字元陣列來存放乙個字串。c語言規定,可以將字串直接賦值給字元陣列 在c語言中,字串總是以 0 作為串的結束符。上面的兩個字串,編譯器已經在末尾自動新增了 0...