Potreboval by som napr. takýto text: 0012 1508 40668 401 zalomiť vždy po medzeri. Aby každé číslo bolo v jednom riadku. Ale každe číslo by som chcel, aby bolo samostatne v poli. Skúšal som to pomocov funkcie Peek(), ale nešlo mi to uložiť do pola. Prosím, kto by vedel poradiť, nech poradí. Ďakujem.
Fórum › .NET
Zalomenie riadku
Díky za radu. A mohol by si mi ešte prosím ťa napísať, ako to použiť?
Tu je ten môj kód:
//vyžšie mám zbytok kódu, ale ten tu asi netreba
string slovo;
slovo = tr.ReadLine(); //tu mi to uloží celý ten text
slovo.Split();
Console.WriteLine(slovo);
Díky:-) Mne sa podarilo toto nájsť: http://msdn.microsoft.com/…873y76a.aspx
To nie je číselne pole, ale stringové pole. Ale v tom stringovom poli sú čísla. A ja to potrebujem prekonvertovať(to textové pole na číselne-s desatinnými číslami). Lenže mi to nejde:-( Niekde chybu robím, len neviem príjsť na to, že kde.
Tu je popísaný príklad vo veľmi jednoduchej podobe. Ale princíp(chyba) je tá istá.
static void Main(string[] args)
{
string s = "22.5";
double c;
c = Convert.ToInt32(s);
Console.WriteLine(c);
Console.ReadKey();
}
nebude to chtit spis http://msdn.microsoft.com/en-us/library/system.convert.todouble.aspx ? int32 je stale jen pro cely cisla
u toho int.parse byl nejaky parametr pro "locale" predpokladam ze neco podobneho bude i pro double.parse
Dalo by sa nejak spraviť, že napr. s piatich desatinných čísel mi vybere to najväčšie, alebo najmenšie? Nechcem to všetko dávať do podmienok. Takto to mám teraz, ale je to veľmi dlhé:
if ((v[a] > v[b]) && (v[a] > v[c]))
najviac = v[a];
To mám aj pre premenné b a c a potom ešte pre najmenšie hľadané číslo. Takže dokopy 3x 2 + 3x 2 = 12 riadkov kódu. A keby mám 10 číslic tak by som mal 40 riadkov kódu. Takže to je blbosť. tak či by sa to nedalo len nejak vyhľadať to najväčšie a zároveň aj najmenšie číslo.
Kód ide, ale zase mám problém:-( A neviem to už ani na nete nájsť. Mne to síce vyhodí najmenšiu hodnotu, ale len dvoch číslic. Ako by sa dalo spraviť, že mi to vyhodí najmenšiu hodnotu 5 číslic? Prosím, poraďte.
Velikost pole můžeš změnit pomocí Array.Resize (to za tebe udělá new a překopírování položek)
http://msdn.microsoft.com/en-us/library/bb348051.aspx
Nebo použij něco, co podle potřeby roste samo, třeba List
http://msdn.microsoft.com/en-us/library/4kf43ys3.aspx
Ďakujem za radu:-) Prosím vás, ako by som mohol napr. medzi číslicami 1 2 3 4 5 nájsť čísla aké chýbajú. Napr. keby mám len 1 2 4. Ako zistím že 3 a 5 chýbajú? U stringov by som to vedel pomocou IndexOfAny, ale u číslic neviem ako. Prekonvertovať? A nedá sa to nejak lahšie?
#1 Peter
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
Dim pole() As String = TextBox1.Text.Split(" ")
Dim delka As Integer
delka = pole.Length
For i As Integer = 0 To delka - 1
ListBox1.Text = ListBox1.Text & pole(i) & vbNewLine
Next
End Sub
Měl jsi na mysli toto ? Kde zadáš do textboxu, ve formě nějaký text, a zmáčkneš tlačítko. Pak ti celej text, převede do pole, po mezerach ,do samostatného pole stringu a vypíše. A v cyklu vypíše do tabulky a oddělí novým řádkem :)
Do tejto témy sa to nehodí, ale tak keď som ju založil a už som sem písal pár otázok, tak som sa rozhodol že moju ďalšiu otázku napíšem sem. Aby som kvôli nejakej maličkosti nemusel zakladať nové vlákno.
Prosím vás, potrebujem z jedného riadku načítať päť slov. Je to z .txt súboru. Slova:
mačka pes krava koza ovečka
Ako by som mohol každé načítať? Viem to spraviť pomocou ReadLine, ale to mi prejde celý riadok. Ja potrebujem len po slove a každé slovo dať do poľa. Sú medzi tými slovami tri medzere, nie len jedna. Prosím, poraďte.
Moderátor: nová otázka = nové vlákno
Na začiatku mám nastavené to streamReader a tu je ten zbytok kódu:
string radek = tr.ReadLine(); //tr je StreamReader tr
var slovaBezMezer = radek.Split(new [] { ' ' }, StringSplitOptions.RemoveEmptyEntries);
Console.WriteLine(slovaBezMezer[3]);
Nevypíše nič, skončí mi to s chybovou hláškou na tom poslednom riadku. Kde to chcem vypisovať.
#50 Peter
Prosimtě, zapni si debugger, dej si tam breakpoint a prozraď mi, co obsahuje řádek a co obsahuje výsledné pole. Ten kód je napsanej správně a bez těch údajů můžu jen hádat. Ta chybová hláška zřejmě říká, že tam žádná čtvrtá položka není, tak zkus zjistit proč.
#51 djanosik
Hups, asi ma zabyješ. Ide to, len ja som teraz dával ako vstup tri slova. Díky moc za rady (hehe a trpezlivosť pri mne). Prosím ťa, ešte ak by si bol tak ochotný, mohol by si mi to podrobne popísať čo to robí? Lebo, aj keď to robí čo má, moc sa v tom nevyznám.
#52 Peter
Tak hlavně, že to funguje.
1. řádek: Přečte ze vstupu první řádek.
2. řádek: Projde text řádku a rozdělí ho na několik částí (tam kde jsou mezery). Přitom vynechá všechny části, které neobsahují žádný text.
Tak to není vůbec zač.
Přidej příspěvek
Ano, opravdu chci reagovat → zobrazí formulář pro přidání příspěvku
×Vložení zdrojáku
×Vložení obrázku
×Vložení videa
Uživatelé prohlížející si toto vlákno
Podobná vlákna
Vymazanie neakého riadku . — založil zonda
Vymazanie vstupného riadku — založil ArcaneBeam13
Argumenty príkazového riadku — založil Milan
Citanie celeho riadku — založil dodo_mt
Vypis jedneho riadku z textboxu — založil Tayson
Moderátoři diskuze