Jump to content
GSForum - Segélyvonal

C#


angifarkas

Recommended Posts

angifarkas

Hello!

Eltudná nekem valaki magyarázni, hogy mi a különbség a Visual C# és a C#között?

Edited by Greene
Link to comment
Share on other sites

  • 11 months later...
[OP]Destroy-man

Valaki meg tudná mondani nekem, hogyan tudok a FileStream/FileWriter-el unicode formátumban fájlba menteni?

 

A programrészlet így néz ki:

            FileStream f = new FileStream("Output.txt", FileMode.Create);
            StreamWriter s = new StreamWriter(f);

            s.WriteLine("{0}","░█▒");
            
            s.Close();
            f.Close();

Ez csak egy teszt program, nyílván nem csak ennyit fog csinálni, de ezeket a karaktereket is tartalmazná, és ehhez kellene az unicode formátum. :)

 

Remélem valaki tud segíteni, a web súgóba (msdn) nem találtam semmit se ezzel kapcsolatban. Googleben meg csak javahoz találtam. :(

Link to comment
Share on other sites

Pjotr

private FileStream myStream;

//Create the Stream Writer, this is ascii

sw = new StreamWriter(myStream, Encoding.ASCII);

sw.WriteLine(Buffer + "\n");

 

Segít?

---

Ilyet is találtam.

Edited by Pjotr
Link to comment
Share on other sites

[OP]Destroy-man

Sajnos nem jók. :( Azt írja vissza rájuk a fordító, hogy csak olvasásra használható:

Property or indexer 'System.IO.TextWriter.Encoding' cannot be assigned to -- it is read only

 

Szerk.:

Sikerült. :) Nem Encoding, hanem UnicodeEncoding kell neki. :)

Ez a helyes kód:

            FileStream f = new FileStream("Output.txt", FileMode.Create);
            StreamWriter s = new StreamWriter(f, UnicodeEncoding.Unicode);

            s.WriteLine("{0}","░█▒");
            
            s.Close();
            f.Close();

Link to comment
Share on other sites

  • 1 year later...
[OP]Destroy-man

IFO fájlbol szeretném kiolvastatni egy DVD lemez adatait. Van egy segéd táblám, amiben bene vannak az adatok, hogy mit, hol keressek az IFO-ban. Eddig rendben is van, de hogy tudom pl. kiolvasni a video információkat? Erre már nem sikerült rájönnöm. :(

A segéd táblákat itt találjátok:

http://dvd.sourceforge.net/dvdinfo/ifo.html

Az első tábla adatai okésak, de a többivel nem tudok mit kezdeni, pedig az lenne a lényege. Például azt sem értem, hogy 2 karakter helyen hogy lehet letárolni annak a sokszorosát? Vagy rosszul értelmezem a táblát? Én abbol indultam ki, hogy az offsetnek megfelelő helyre pozicionálok (0100, ami decimális formában a 256 karaktert jelenti), és a megadott méretnek megfelelő karakterszámig olvasok (video információk esetében ez 2 karaktert jelent). Vagy a video adatok kiolvasását már nem is a video_ts.ifo-bol kéne végeznem?

 

A DVD szabványát (hogy VMG vagy VTS formátumu), azt még sikerül helyessen kiolvastatnom. :)

Link to comment
Share on other sites

  • 11 months later...
Dinter0000

Sziasztok!Olyat hogyan tudok csinálni C#-ben,hogy a szöveget amit ki akarok íratni nem dobja ki egybõl,hanem betûnként kiírja?

Link to comment
Share on other sites

[OP]Destroy-man

Tudnád egy kicsit konkretizálni a dolgot? Hogy szeretnéd kivitelezni? Automatikusan írja hozzá a betűket, vagy pl. gombnyomásra csinálja?

 

A megoldás pedig az, hogy a stringet egy char[] tömbbé alakítod, majd egy ciklussal bejárod a tömböt, és szépen kiíratod a tartalmát.

Másik megoldás, hogy megvizsgálod a string hosszát (string.Length), és utána pedig kiíratod string.Substring(0,2) függvénnyel. A 0 helyére azt írd be, ahonnan az olvasást kezded, a 2-es helyére pedig, hogy hány karakter hosszú részt írjon ki a kezdőponttól.

 

Ha azt szeretnéd, hogy 5 másodpercenket várjon a kiírattatások között, akkor használd a Thread.Sleep(5000); függvényt. Amint látod a paraméterjét miliszekundumban kell megadni.

Link to comment
Share on other sites

Dinter0000

Ebben mi a hiba?

Hibaüzi: 'ConsoleApplication9.Program.Main(string[])' must declare a body because it is not marked abstract, extern, or partial.

 

 

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace ConsoleApplication9
{
    class Program
    {
        static void Main(string[] args);
        public static int ird(string szov)
        {
            int i = 0;
            while (i < szov.Length)
            {
                Console.Write(szov[i]);
                System.Threading.Thread.Sleep(100);
                i++;
                
                {
                    return 1;
                ird("Mi a neved?");
                string név = Console.ReadLine();
                ird("Haha " + név + ",hülye vagy!");
                ird("Most megszívod,mert formázom a C meghajtód!\nformat C:\n\nKész!");
        }
    }
    }
    }
}

Link to comment
Share on other sites

Pjotr

static void Main(string[] args);

 

Hogy akarod így elindítani a programod?

Link to comment
Share on other sites

Dinter0000

Hát egy console app,ami betűzve írja ki a szöveget.De am most kezdtem el C#-t,úgyhogy nem nagyon tudom.Így azt sem,hogy miért akadályozza.

Link to comment
Share on other sites

[OP]Destroy-man

Azért így szebben néz ki:

using System;
using System.Threading;

namespace ConsoleApplication1
{
    class Program
    {
        static void Main(string[] args)
        {
            string neved = "Mi a neved? ";
            for (int i = 0; i < neved.Length; i++)
            {
                Console.Write(neved.Substring(i, 1));
                Thread.Sleep(100);
            }

            string udv = "Üdvözöllek " + Console.ReadLine() + "!";

            for (int i = 0; i < udv.Length; i++)
            {
                Console.Write(udv.Substring(i, 1));
                Thread.Sleep(100);
            }

            Console.ReadKey();
        }
    }
}

Link to comment
Share on other sites

Dinter0000

Köszönöm szépen!Még az,ha azt szeretném,hogy a nevet a következő sorba kelljen írni,ne a kérdés mellé,akkor azt hogyan lehet megvalósítani?

+ha kiírta,x idő múlva bezárja az ablakot?

Link to comment
Share on other sites

[OP]Destroy-man

A név bekérése elõtt ki írsz egy üres sort.

 

Szóval:

Console.WriteLine();

string udv = "Üdvözöllek " + Console.ReadLine() + "!";

 

Kilépéshez cseréld le a Console.ReadKey();-t erre:

Thread.Sleep(1000);
Environment.Exit(0);

 

Egyben, egy kicsit módosítva (lerövidítve) így néz ki a kód:

using System;
using System.Threading;

namespace ConsoleApplication1
{
    class Program
    {
        static void Main(string[] args)
        {
            kiir("Mi a neved?");
            Console.WriteLine();
            kiir("Üdvözöllek " + Console.ReadLine() + "!");
            kilep();
        }

        private static void kiir(string data)
        {
            for (int i = 0; i < data.Length; i++)
            {
                Console.Write(data.Substring(i, 1));
                Thread.Sleep(100);
            }
        }

        private static void kilep()
        {
            Thread.Sleep(1000);
            Environment.Exit(0);
        }
    }
}

Link to comment
Share on other sites

Dinter0000

Köszi mindent!Még egyet kéredznék.Nem tudsz egy jó C# programozásról szóló könyvet?Én most Illés Zoltán-Programozás C# nyelven-t olvasom.

Link to comment
Share on other sites

Dinter0000

Legalább angol?Mert azzal nem sokra megyek.

Link to comment
Share on other sites

Garono

Angoltudás nélkül amúgy sem mész sokra...

Link to comment
Share on other sites

[OP]Destroy-man

Nálunk a suliban ezt a könyvet adták:

Link

C# és VB kód is van minden példához. Én mondjuk csak átlapoztam, hogy tudjam mi a tananyag, használnom nem kellett.

Én netes tutorialok alapján tanultam meg a C#-ot.

 

Ez a könyv viszont nekem szimpatikusnak tűnik:

https://devportal.hu/Fajlok/Download.ashx?s...et%5ccsharp.pdf

Link to comment
Share on other sites

KGigi

@Dinter0000

A magyar nyelvû irodalommal az a baj, hogy az igazán jó szakkönyvek külföldiek fordításai. Egy fordítás átfutási ideje fél-egy-két év, annyi idõ alatt az eredetibõl akár két kiadás is kijöhet. Arról nem is beszélve, hogy sok könyvnél az új kiadásokat le sem fordítják, hanem magyarul az évekkel korábbi változatot árulják. Sajnálom, de Garono-nak teljesen igaza van, az informatikában semmire nem mész használható angol nyelvtudás nélkül. Egyébként a .NET online referenciája is használható, valamint a Stack Overflow-n is nagyon sok hasznos megoldás van.

Link to comment
Share on other sites

payskin

A Stack Overflow egy igazi kincsesbánya, bármiben is programozzon az ember!

Link to comment
Share on other sites

[OP]Destroy-man

Ha pedig tutorial szintû leírások kellenek, akkor pedig a CodeProject jöhet szóba. Én nagyon sokat használtam.

Link to comment
Share on other sites

Dinter0000
Köszi mindent!Még egyet kéredznék.Nem tudsz egy jó C# programozásról szóló könyvet?Én most Illés Zoltán-Programozás C# nyelven-t olvasom.

 

Ebben a könyvben csak példák vannak.

Link to comment
Share on other sites

[OP]Destroy-man

Olyan programozásos könyvet nem hinném, hogy találnál, amiben sorról-sorra le lenne írva, hogy mi mit csinál, és mibõl származik, stb. Ez azért van így, hogy megpróbáljon rávezetni, hogy te találd ki, hogy az ott mi is. Így gyorsabban meg fogod tanulni, igaz nehezebben. Pont ezért van az, hogy a tananyag részek modulárisan, azaz egymásra építve követik egymást ezekben a könyvekben.

Link to comment
Share on other sites

Pjotr

C#-ból a Reiter jegyzet az alja, utána minden jön magától.

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...