1. Naloga
S pomočjo ukaza ReadLine preberemo ime datoteke in niz. Nato z ukazom StreamWriter odpremo podatkovni kanal in nato s funkcijo Write niz zapišemo na datoteko. S funkcijo Close pa zapremo podatkovni kanal.
class Program
{
static void Main(string[] args)
{
ustvariDatoteko();
}
static void ustvariDatoteko()
{
Console.Write("Vnesi ime datoteke: ");
String ime_datoteke = Console.ReadLine(); //preberemo ime datoteke
Console.Write("Vnesi niz: ");
String niz = Console.ReadLine(); //prebremo niz
StreamWriter sw = new StreamWriter(ime_datoteke); //odpremo podatkovni kanal
sw.Write(niz); //zapišemo na datoteko
sw.Close();
}
}
Video: 1. Naloga
2. Naloga
Najprej z ukazom ReadLine preberemo ime tekstovne datoteke. Nato z ukazoma StreamReader in StreamWriter omogočimo podatkovni kanal za branje in pisanje na datoteko. Iz datoteke beremo vrstico za vrstico in ji sproti z ukazom toUpperCase spreminjamo male črke v velike. Vsako prebrano vrstico, ki smo ji spremenili črke jo sproti tudi zapišemo v novo datoteko.
class maleVelike
{
static void Main(string[] args)
{
malevelike()
}
static void malevelike()
{
Console.Write("Vnesi ime datoteke: ");
String ime_datoteke = Console.ReadLine(); //preberemo ime datoteke
StreamReader sr = new StreamReader(ime_datoteke); //podatkovni kanala za branje in pisanje
StreamWriter sw = new StreamWriter("kopija.txt");
String vsebina = sr.ReadToEnd(); //vso vsebino preberemo na enkrat
sw.WriteLine(vsebina.ToUpper()); //ji spremenimo znake in zapišemo na datoteko
sr.Close();
sw.Close();
}
}
Kviz
Z ukazom StreamReader vzpostavimo podatkovni kanal, ki omgoča branje iz datoteke.
StreamReader sr = new StreamReader(ime_datoteke);
Ukaz ReadToEnd omgoča, da vsebino datoteke prebremo v enem samem koraku. String vsebina = sr.ReadToEnd();
Deklaracija tabele podatkovnega tipa integer.
int[] ime_tabele = new int[dolžina_tabele];
Če želimo na datoteko dodati vsebino, pri tem pa želimo prvotno vsebino obdržati, uporabimo dodaten parameter, pri vzpostavljanju podatkovnega kanala. Če ima dodaten parameter vrednost true pomeni, da se bo vsebina zapisovala na konec datoteke. StreamWriter sw = new StreamWriter(ime_datoteke, true);
Vključitev modula System.IO omogoča delo z tekstovnimi datotekami. Module zapišemo na začetek datoteke. Zapišemo jih z ukazom using.
using System.IO;
Če želimo ugotoviti v katerem direktoriju se trenutno nahajamo uporabimo ukaz GetCurentDirectory().
File.GetCurentDirectory();
Dodatne naloge
Sestavi funkcijo dvaPresledka, ki preko tipkovnice prebre 5 nizov. Nize nato po vrsti zapiši na datoteko tako, da med vsak niz vrineš dva presledka.
Vsebina tekstovne datoteke je:
3+4
1-4
4*4
1/8
Sestavi funkcijo izracunaj, ki prebre vrstico eno za drugo in izračuna izraz, ki je zapisan. Pojavijo se lahko le operacije: seštevanja, odštevanja, množenja in deljenja. Namig: uporabi funkcijo Split.
V datoteki so zapisane izmerjene vrednosti temperature. Zapisane so vse v eni vrstici in med njimi je en presledek. Sestavi funkcijo temperatura, ki poišče temperaturo, ki najbolj odstopa od povprečne izmerjene temperature.
Vsebina datoteke:
12 24 21 23 23 24 25 23 22 23 19 18 16 19
Sestavi funkcijo obrni, ki iz datoteke prebre vsebino in jo nato od zadaj naprej zapiši nazaj na isto datoteko. Prvotno vsebino izbriši.
Primer:
Vsebina prej: n a l o g e
Vsebina potem: e g o l a n
Vsebina datoteke naj bo poljubna.
Sestavi funkcijo, ki prejme tri prametre: ime datoteke, število nizov in maksimalno dolžino niza. Nato generiraj nize, ki vsebujejo naključne ASCII znake. Vsak niz je lahko dolg največ toliko, kolikor je maksimalna dolžina niza, ki jo prejmemo kot parameter. Število nizov pa določa, koliko nizov se lahko generira. Nizi se naj sproti zapisujejo na datoteko. Vsebino datoteke na koncu izpiši tako, da izpišeš vsako vrstico posebej.