2016-05-17 42 views
1

我想從我的QTextEdit中讀取4個值,並將它們作爲4個不同的值。例如,我插入-0.69995284 0.69995284 0.14188747 0.56378639,我想他們作爲從qtextedit中讀取多個值並將它們作爲不同的數字

float Value1 = -0.69995284 float Value2 = 0.69995284 float Value3 = 0.14188747 float Value4 = 0.56378639

我這個開頭:

QString textEditValue = ui->myTextEdit->toPlainText() QStringList lines = textEditValue .split(" ");

,但我不知道我必須做的,以獲得不同的值。

+0

迭代,並使用'的QString :: toFloat() '爲每個列表成員。看看[foreach關鍵字](http://doc.qt.io/qt-5/containers.html#the-foreach-keyword)。 –

回答

1

假設你的分,你希望(即一個字符串,每個號碼)

QVector<float> values; 
int size = lines.size(); 
for(int i=0; i < size; i++) 
{ 
    bool ok=false; 
    float value = lines.at(i).toFloat(&ok); 
    if(ok) 
    values.push_back(value); 
} 

值現在包含您的彩車工作過。

0

QStringListQString s的容器。假設您split正確填寫每個元素lines用一個值,你應該使用你應該使用copy這些值移動到vector迭代器的語法:在列表

vector<float> Values(lines.size()); 

copy(lines.cbegin(), lines.cend(), Values.begin(), [](const auto& i){ return i.toFloat(); }); 
相關問題