Diskuze: Přepsání textového souboru pozpátku
V předchozím kvízu, Test znalostí C# .NET online, jsme si ověřili nabyté zkušenosti z kurzu.
Zobrazeno 4 zpráv z 4.
V předchozím kvízu, Test znalostí C# .NET online, jsme si ověřili nabyté zkušenosti z kurzu.
môžeš to skúsiť napríklad takto. S tým predpokladom, že vieš ako sa číta textový súbor.
var text = ""; //data zo suboru
var sb = new StringBuilder("");
foreach(var word in text.Split(' ')){
sb.Insert(0, word + " ");
}
var result = sb.ToString();
a potom to už len klasicky zapíšeš do súboru.
Myslím, že vo výsledku by to mohlo vyzerať takto
var text = "";
var filePath = ""; //cesta k súboru
var savePath = ""; //cesta k ulozeniu
using (var sr = new StreamReader(filePath))
{
text = sr.ReadToEnd();
}
var sb = new StringBuilder("");
foreach (var word in text.Split(' '))
{
sb.Insert(0, word + " ");
}
sb.Remove(sb.Length - 1, 1); // odstranenie nadbytocneho whitespacu na konci
using (var sw = new StreamWriter(savePath))
{
sw.Write(sb.ToString());
sw.Flush();
}
Nekomu se nechce dělat DU. Pro řešení bych využil zásobník LIFO v C# Stack. Načíst slova do stacku a pak zapsat do nového souboru. Použil bych Linq pro rychlí zápis ze stacku do souboru.
Zobrazeno 4 zpráv z 4.