mikrocontroller.net

Forum: PC-Programmierung C# Ausgabe Problem Hilfe


Autor: Kehrenkamp (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
int i = 300000000 ;
i = Convert.ToInt32(textBox1.Text);
string a = String.Format("{0:X08}", i);
textBox4.Text = a

Guten Abend,

Hab hier ein kleines Programm geschrieben.
Das wandelt die zahl 300000000 in eine Hexdezimal zahl um.
Funktioniert auch alles einwandfrei.

300000000 = 11E1A300 // Das Programm gibt das aus, was auch richtig ist.

Jetzt zu meiner Frage:

Ich möchte die Ausagbe von meiner Hex-Zahl: 11 E1 A3 00 bisschen 
durcheinander bringen, undzwar soll die Ausgabe so schauen: 00 A3 E1 11
Weiß einer Rat?

MfG

Autor: Matthias (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Byteweise maskieren und in neue 32bit variable kopieren

Autor: Ralf (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
> ... bisschen durcheinander bringen...
Ein bisschen, oder konkret neu anordnen?

Weil:
> ... soll die Ausgabe so schauen: 00 A3 E1 11 ...
entspricht genau der umgekehrten Reihenfolge!

Du könntest den String (egal ob Original- oder gewandelt) von hinten her 
ausgeben. Mit den String-Funktionen sollte das kein Problem sein. Immer 
von "hinten" zwei der Buchstaben auslesen, und ausgeben. Danach den 
String auf die Länge - 2 Buchstaben kürzen.

Hat den Vorteil, dass die Zahl an sich unverändert bleibt.

Ralf

Autor: Kehrenkamp (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Konkret neu anordnen: 11 E1 A3 00 // hier drauß soll das werden
                      00 A3 E1 11 //

Hier noch ein Beispiel;:

00 00 00 01
01 00 00 00

Kann mir vielleicht einer nen kleines Beispiel sagen, wie ich den string 
von hinten ausgebe?

MfG

Autor: Chris ... (dechavue)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
So zum Beispiel:
    class Program {
        static void Main(string[] args) {
            Console.WriteLine(FormatInversHex(300000000));
        }

        static string FormatInversHex(Int32 val) {
            StringBuilder ret = new StringBuilder();
            string strVal = val.ToString("X08");
            for (int i = strVal.Length - 2; i >= 0; i -= 2) {
                ret.Append(strVal.Substring(i, 2));
                ret.Append(" ");
            }
            return ret.ToString();
        }
    }

greets

Autor: Kehrenkamp (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ich sag vielen vielen Dank.

Aber könnte mir das einer noch für Windows Anwendung erklären?

Autor: Chris ... (dechavue)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Das funktioniert doch auch in einer WindowsForms - Applikation genau 
gleich, die Funktion liefert ja einfach einen string zurück.

In dem Beispiel habe ich diesen halt auf die Konsole geschrieben, man 
kann ihn natürlich auch genauso gut einer TextBox zuweisen oder was auch 
immer du mit dem Ergebnis vor hast.

Autor: Kehrenkamp (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Vielen vielen Dank nochmal vielen Dank habs hingebracht.

Gute Nacht

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.