PVA
Bc. Matěj Cajthaml — SSPŠ
©
Co je náhodné?
Co můžou být tyto parametry?
Potom jsou nám tyto náhodné
čísla k ničemu, ne?
Random
Random
Next()
int
Next(max)
int
Next(min, max)
int
NextDouble()
0.0 — 1.0
Jak získáme desetinné číslo např. v rozsahu 0 — 100
?
Random
objektů
Vytvořte program reprezentující hru větší-menší. Program vygeneruje náhodné číslo, které se snaží uživatel uhodnout pomocí tipů.
Soubor má příponu, ta však neurčuje co je obsahem.
Změnou přípony se data netransformují.
Data se na disku ukládají binárně a při převodu do textových hodnot nemusí dávat smysl.
\n
vs. \r\n
Každý soubor může mít různé přístupové práva.
Vlastník vs. skupina vs. ostatní
File
File
System.IO
File.ReadAllText(cesta)
FileNotFoundException
File.ReadAllLines(cesta)
FileNotFoundException
File.Exists(cesta)
File.Delete(cesta)
File.WriteAllText(cesta, obsah)
File.WriteAllLines(cesta, radky)
File.AppendAllText(cesta, obsah)
File.AppendAllLines(cesta, řádky)
File.Copy(src, dst)
File.Move(src, dst)
File.Replace(src, dst, dstBackup)
File.GetLastAccessTime(file)
File.GetLastWriteTime(file)
Založte nový projekt a vytvořte soubor pomocí:
File.WriteAllText("27_files_1.txt", ":)")
Nalezněte místo jeho vytvoření. Kde se tento soubor nachází?
Zjistěte jak a vytvořte soubor v nadřazené složce té aktuální.
Vytvořte soubor na Vaší ploše.
Dle videa vytvořte hru šibenice. Slova budou náhodně zvolena ze seznamu ze souboru words.txt.
Vytvořte program, který bude do souboru postupně připisovat věci tak, jak je bude uživatel zadávat.
Vytvořte program, který přečte obsah souborů a odstraní řádky, které nejsou správně napsaná desetinná čísla.
Directory
z knihovny System.IO
Directory.CreateDirectory(path)
Directory.Exists(path)
Directory.Delete(path)
Directory.Move(src, dest)
Directory.GetFiles(path)
Directory.GetDirectories(path)
Jaký je problém tříd File
a Directory
?
Proto máme způsob jak načítat data postupně.
StreamReader
z knihovny System.IO
using
Co se stane se souborem, když ho pomocí Streamu otevřeme?
stream.Read()
stream.ReadLine()
stream.ReadToEnd()
stream.ReadBlock(buffer, index, count)
using
Write
/ WriteLine
Vytvořte program, který přečte obsah souborů a odstraní řádky, které nejsou správně napsaná desetinná čísla. Použijte streamy.
Jak se v počítačí ukládá čas (datum)?
63776293428232
20011221T08:30:52Z
Proč vůbec potřebujeme čas ukládat?
DateTime
DateTime
https://docs.microsoft.com/cs-cz/dotnet/standard/base-types/custom-date-and-time-format-strings
Jak odečteme 35 dní od data?
Co je datový typ vlastnosti DayOfWeek
?
Program se může spouštět v různém čase na různě nastavených počítačích.
Času počítače se tedy nedá věřit.
Práce s časovými pásmy, různými přesuny a předchodnými roky.
Používané knihovny pracují správně bez nutného zásahu programátora.
Console.ReadKey()
ConsoleKeyInfo
Přečtěte od uživatele jedno číslo ze které zjistíte, zda je zadaný rok přestupný.
Přečtěte od uživatele dvě čísla: rok a měsíc. Z těchto údajů vypište jedno číslo, které bude reprezentovat počet dní v daném měsíci v daném roce.