У меня есть строка, которая выглядит следующим образом:
TEXT MORETEXT 227.905 174.994 180 1111
Мне любопытно, как я могу изменить десятичное число, чтобы иметь только 2 места.
Так что вместо строки выше,Я хотел бы, чтобы это было:
TEXT MORETEXT 227.90 174.99 180 1111 #rounding down
ИЛИ
TEXT MORETEXT 227.91 174.99 180 1111 #rounding up
Кто-нибудь знает, как захватить эту строку и изменить значениядо десятичного знака, а затем обрезать десятичное число вниз?
РЕДАКТИРОВАТЬ:
Итак, если у меня был файл, который читает: (Примечание: файл состоит из нескольких строк)
TEXT MORETEXT 227.905 174.994 180 1111
TEXT MORETEXT 227.905 174.994 180 1111
TEXT MORETEXT 227.905 174.994 180 1111
и я хочу, чтобы он перешел в RichTextBox
следующим образом:
TEXT MORETEXT 227.90 174.99 180 1111
TEXT MORETEXT 227.90 174.99 180 1111
TEXT MORETEXT 227.90 174.99 180 1111
Как я могу это сделать?
EDIT2:
string[] listOneLines = null;
string[] listTwoLines = null;
string[] listUserLines = null;
// Splits the lines in the rich text boxes
listOneLines = removePKG1EndingsRichTextBox.Text.Split('\n');
listTwoLines = removePKG2EndingsRichTextBox.Text.Split('\n');
listUserLines = removeUserEndingsRichTextBox.Text.Split('\n');
string[] myLines = removePKG1EndingsRichTextBox.Text.Split('\n');
StringBuilder sb = new StringBuilder();
foreach(string myLine in myLines)
{
string[] piecesStringArray = removePKG1EndingsRichTextBox.Text.Split(' '); //Assuming those are tabs
double d1 = Convert.ToDouble(piecesStringArray[2]);
double d2 = Convert.ToDouble(piecesStringArray[3]);
double round1 = Math.Round(d1, 2);
double round2 = Math.Round(d2, 2);
sb.AppendLine(piecesStringArray[0] + piecesStringArray[1] + round1 + round2 + piecesStringArray[4] + piecesStringArray[5]);
}
listOneLines = sb.ToString(); #does not work..
// Set the selection mode to multiple and extended.
placementOneListBox.SelectionMode = SelectionMode.MultiExtended;
placementTwoListBox.SelectionMode = SelectionMode.MultiExtended;
userDefinedListBox.SelectionMode = SelectionMode.MultiExtended;
// Shutdown the painting of the ListBox as items are added.
placementOneListBox.BeginUpdate();
placementTwoListBox.BeginUpdate();
userDefinedListBox.BeginUpdate();
// Display the items in the listbox.
foreach (var item in listOneLines)
placementOneListBox.Items.Add(item);
foreach (var item2 in listTwoLines)
placementTwoListBox.Items.Add(item2);
foreach (var item3 in listUserLines)
userDefinedListBox.Items.Add(item3);
// Allow the ListBox to repaint and display the new items.
placementOneListBox.EndUpdate();
placementTwoListBox.EndUpdate();
userDefinedListBox.EndUpdate();
Я пытался уменьшить десятичные значения для каждой строки в RTBпрежде чем загрузить его на ListBox
.Однако я изо всех сил ...