Vydělávej až 160.000 Kč měsíčně! Akreditované rekvalifikační kurzy s garancí práce od 0 Kč. Více informací.
Hledáme nové posily do ITnetwork týmu. Podívej se na volné pozice a přidej se do nejagilnější firmy na trhu - Více informací.
Avatar
Neaktivní uživatel:2.10.2012 20:53

Jak to mám udělat ?
Do using jsem přidal název ale když chci spustit nějakou metodu tak nevím jak...

Odpovědět
2.10.2012 20:53
Neaktivní uživatelský účet
Avatar
David Jančík
Vlastník
Avatar
Odpovídá na Neaktivní uživatel
David Jančík:2.10.2012 20:56

Výchozí to je:
Namespace.Class.Method
Když si dáš using tak nemusíš psát ten prefix a stačí tedy jen Třída. Pokud máš více tříd a nechceš je vypisovat tak ten using prodloužíš.
Například using System.Net;, using System.Net.Mail;

Dotaz je moc obecný. Zapracuj na psaní otázek a přikládat nějaký kód ;)

Nahoru Odpovědět
2.10.2012 20:56
Zapomeň, že je to nemožné a udělej to ;)
Avatar
matesax
Tvůrce
Avatar
Odpovídá na Neaktivní uživatel
matesax:2.10.2012 20:57

?? :)

Myslím, že je na místě popsat dobře tvůj problém... Každopádně napadají mě 2 věci, jak jsi to mohl myslet - jak získat seznam metod/tříd/enu­mů/struktur/roz­hraní...? Používáš-li VS, stačí napsat někam do metody daný namespace a hned za něj napsat tečku... Pochopitelně mnohdy bude lepší zajít na oficiální manuál - který je zatraceně dobře vedený. Mnohem nepravděpodobněji mi zní verze č.2 - přidal jsi příslušnou referenci?

Editováno 2.10.2012 20:58
 
Nahoru Odpovědět
2.10.2012 20:57
Avatar
Odpovídá na David Jančík
Neaktivní uživatel:2.10.2012 21:01

Pokouším se zprovoznit toto :
http://programujte.com/…soubory-v-c/

V using mám
using Ini;

a když někam napíšu Ini. (chci napsat něco jako Ini.IniWriteValue) tak mi jde jen Ini.IniFile

Nahoru Odpovědět
2.10.2012 21:01
Neaktivní uživatelský účet
Avatar
David Jančík
Vlastník
Avatar
Odpovídá na Neaktivní uživatel
David Jančík:2.10.2012 21:06

Zkoušel jsi vytvořit instanci té třídy?

Nahoru Odpovědět
2.10.2012 21:06
Zapomeň, že je to nemožné a udělej to ;)
Avatar
matesax
Tvůrce
Avatar
Odpovídá na Neaktivní uživatel
matesax:2.10.2012 21:07

INI - zase? Ne - prosím ať je to jen zlý sen... :)

http://www.itnetwork.cz/…-souboru-csv

 
Nahoru Odpovědět
2.10.2012 21:07
Avatar
Odpovídá na David Jančík
Neaktivní uživatel:2.10.2012 21:07

Pokud myslíš

Ini IniSoubor = new Ini();

tak
Error 1 'Ini' is a 'namespace' but is used like a 'type'

Nahoru Odpovědět
2.10.2012 21:07
Neaktivní uživatelský účet
Avatar
David Jančík
Vlastník
Avatar
Odpovídá na Neaktivní uživatel
David Jančík:2.10.2012 21:08

Né Namespace, ale třídy. Achj, měl by sis projít základy ;)

Nahoru Odpovědět
2.10.2012 21:08
Zapomeň, že je to nemožné a udělej to ;)
Avatar
Odpovídá na matesax
Neaktivní uživatel:2.10.2012 21:09

díky ale ty tvoje TXT soubory neberu,nehodlám vytvářet 4 soubory nebo 5 minut přemýšlet co každý řádek znamená,nehledě na to že by se to pokaždé zapsalo na jiný

Nahoru Odpovědět
2.10.2012 21:09
Neaktivní uživatelský účet
Avatar
matesax
Tvůrce
Avatar
Odpovídá na Neaktivní uživatel
matesax:2.10.2012 21:11

Tak udělej databázi - ale INI? (A přečti si nadpis té stránky...)

 
Nahoru Odpovědět
2.10.2012 21:11
Avatar
David Hartinger
Vlastník
Avatar
Odpovídá na Neaktivní uživatel
David Hartinger:2.10.2012 21:12

Pane bože, po sté, použij XML. INI se v .NET a nepoužívá, stejně jako v mainstreamu obecně.

Nahoru Odpovědět
2.10.2012 21:12
You are the greatest project you will ever work on.
Avatar
Odpovídá na David Jančík
Neaktivní uživatel:2.10.2012 21:13

Ajó....tkže

IniFile iniSoubor = new IniFile(@"konfig.ini");

Díky :D

Nahoru Odpovědět
2.10.2012 21:13
Neaktivní uživatelský účet
Avatar
matesax
Tvůrce
Avatar
Odpovídá na Neaktivní uživatel
matesax:2.10.2012 21:14

Ne - to rozhodně ne! INI - ne! :)

 
Nahoru Odpovědět
2.10.2012 21:14
Avatar
David Jančík
Vlastník
Avatar
Odpovídá na Neaktivní uživatel
David Jančík:2.10.2012 21:15

Naprosto jednoduše.

Ukládání:

public static void saveSettingsFile(string filePath, Dictionary<string, string> dictionary)
{
        using (StreamWriter sw = new StreamWriter(folder + filePath, false))
        {
                foreach (var entry in dictionary)
                {
                        sw.WriteLine(entry.Key + ":=" + entry.Value);
                }
        }
}

Načítání:

public static Dictionary<string, string> loadSettingsFile(string filePath)
{
        Dictionary<string, string> settings = new Dictionary<string, string>();
        try
        {
                using (StreamReader sr = new StreamReader(folder + filePath))
                {
                        string line;
                        string[] splited;
                        while ((line = sr.ReadLine()) != null)
                        {
                                splited = line.Split(new string[] { ":=" }, StringSplitOptions.None);
                                if (splited.Length > 2)
                                        for (int i = 2; i < splited.Length; i++)
                                                splited[1] += ":=" + splited[i];

                                settings.Add(splited[0], splited[1]);
                        }
                }
        }
        catch (Exception)
        {
                Console.WriteLine("load settings ex - file not exists");
        }

        return settings;
}

A k tvému předchozímu příspěvku, abych teda jen nekomandoval. Má to být Namespace.Třída název = new Namespace.Třída();
Vytváříš instanci třídy. Né namespace. Pokud si dáš using Namespace. Tak pak voláš jen Třída.

Tedy

using Ini;

IniFile myFile = new IniFile();
myFile.IniWriteValue();
Editováno 2.10.2012 21:18
Nahoru Odpovědět
2.10.2012 21:15
Zapomeň, že je to nemožné a udělej to ;)
Avatar
David Jančík
Vlastník
Avatar
Odpovídá na Neaktivní uživatel
David Jančík:2.10.2012 21:17

Jó a teď tě tu ještě kazim ukázkou jak jednoduše použít INI soubory, když se má používat XML. Vidíš co děláš?

Nahoru Odpovědět
2.10.2012 21:17
Zapomeň, že je to nemožné a udělej to ;)
Avatar
Odpovídá na David Jančík
Neaktivní uživatel:2.10.2012 21:26

btw. nevíš jak udělat aby se mi to neukládálo do složky C:/Windows ? :D (tam to http://programujte.com/…soubory-v-c/ )

Nahoru Odpovědět
2.10.2012 21:26
Neaktivní uživatelský účet
Avatar
David Jančík
Vlastník
Avatar
Odpovídá na Neaktivní uživatel
David Jančík:2.10.2012 21:30

Nepoužívej to jejich. Použij to moje, když už sem ti to poslal ne? :D
Tam si dáš pěkně:

Environment.GetFolderPath(Environment.SpecialFolder.ApplicationData) + Path.DirectorySeparatorChar + "MojeAplikace" + Path.DirectorySeparatorChar;

A pohodička :)

Nahoru Odpovědět
2.10.2012 21:30
Zapomeň, že je to nemožné a udělej to ;)
Avatar
matesax
Tvůrce
Avatar
Odpovídá na David Jančík
matesax:2.10.2012 21:32

Pořád se tu ale bavíme o INI - proč? :)

 
Nahoru Odpovědět
2.10.2012 21:32
Avatar
Kit
Tvůrce
Avatar
Odpovídá na Neaktivní uživatel
Kit:2.10.2012 21:36

Takže pokud napíšu

using Ini;
IniFile myFile = new IniFile();

je to stejné jako

Ini.IniFile myFile = new Ini.IniFile();

Pomocí using vlastně jen definuji seznam míst, kde se má hledat třída IniFile. Něco jako PATH. Doufám, že jsem to pochopil správně.

Nahoru Odpovědět
2.10.2012 21:36
Vlastnosti objektů by neměly být veřejné. A to ani prostřednictvím getterů/setterů.
Avatar
David Hartinger
Vlastník
Avatar
Odpovídá na Kit
David Hartinger:2.10.2012 21:55

Ano, zpřístunuješ tak jednotlivé jmenné prostory, které jsou v sobě zanořené. V případě kolize musíš specifikovat celou cestu nebo vytvořit alias.

Nahoru Odpovědět
2.10.2012 21:55
You are the greatest project you will ever work on.
Děláme co je v našich silách, aby byly zdejší diskuze co nejkvalitnější. Proto do nich také mohou přispívat pouze registrovaní členové. Pro zapojení do diskuze se přihlas. Pokud ještě nemáš účet, zaregistruj se, je to zdarma.

Zobrazeno 20 zpráv z 20.