Hallo,
Ich habe diesmal eine Frage zum Unicode:
Ich habe eine Zahl, z.B. 97. Diese entspricht dem kleinen „a“.
Nun möchte ich aber wissen, wie ich diese Unicode-Nummer in ein String, also zum „a“ umwandele.
Gruß
GURKE
Hallo,
Ich habe diesmal eine Frage zum Unicode:
Ich habe eine Zahl, z.B. 97. Diese entspricht dem kleinen „a“.
Nun möchte ich aber wissen, wie ich diese Unicode-Nummer in ein String, also zum „a“ umwandele.
Gruß
GURKE
Hi,
Hier ein Beispiel:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace ConsoleApplication1
{
class Program
{
static void Main(string[] args)
{
UTF8Encoding utfe = new UTF8Encoding();
Console.WriteLine(utfe.GetString(new byte[9] { 55, 179, 97, 91, 65, 5, 59, 84, 125 }));
Console.ReadLine();
}
}
}
Ich glaube das ist selbsterklärend wenn nicht einfach schreiben.
Lg der einzigware
Hey,
Ich kann mich nur erneut bedanken!
Klappt so wie ich das will!
Gruß
GURKE
Hallo,
zum Umwandeln kenne ich auch noch chr bzw. chrw:
http://msdn.microsoft.com/de-de/library/613dxh46%28V…
Gruß
Thomas
Hi
Die wahrscheinlich einfachste (und unsicherste) Methode wäre
string str = ((char)97).ToString();
MfG IGnow
Moin,
Danke für die weiteren Antworten!
Nun habe ich aber noch eine Frage zum Gegenteil, also String in Integer umwandeln.
Mein String sieht z.B. so aus:
string datei = "100971009810099";
Ich nehme immer 5 Ziffern und möchte sie zu einer Zahl zusammenpacken, um 10000 jeweils abziehen zu können.
(10097 besteht aus 97, Unicode für „a“ + 10000 um immer eine 5stelige Zahl zu haben)
int idatei = Convert.ToInt32(datei[i]) \* 10000 + Convert.ToInt32(datei[i + 1]) \* 1000 + Convert.ToInt32(datei[i + 2]) \* 100 + Convert.ToInt32(datei[i + 3]) \* 10 + Convert.ToInt32(datei[i + 4]);
Wenn in diesem Falle string datei = „10097“ ist, kommt aber auf keinen Fall 10097 raus, sondern 543813!
Ein einfaches zusammenfügen als String ergibt 248!
Ist es also erstmal möglich, das ein Index ein Bereich (i -> i + 4) animmt?
Wenn nein, wie kann ich diese dann so zusammenfügen das ich auch wieder 10097 rausbekomme um als Integer weiter rechnen zu können.
Ich hoffe das war jetzt nicht zu umständlich ausgedrückt.
Gruß
GURKE
Hallo
Mal sehen ob ich das richtig verstanden habe:
string str = "10097100232842";
int i = int.Parse(str.Substring(0, 5));
char c = (char)(i - 10000); // enthält jetzt 'a'
Andersrum wäre:
char c = 'a';
int i = (int)c + 10000;
string str = int.ToString(); // enthält jetzt "10097"
Wars das?
MfG IGnow
Moin,
Mal sehen ob ich das richtig verstanden habe:
Jop haste, aber ich hatte so selber meine Probleme worin das Prob bestand
string str = „10097100232842“;
int i = int.Parse(str.Substring(0, 5));
char c = (char)(i - 10000); // enthält jetzt ‚a‘
Danke! Funktioniert wie üblich einwandfrei!
Andersrum wäre:
char c = ‚a‘;
int i = (int)c + 10000;
string str = int.ToString(); // enthält jetzt „10097“Wars das?
Fürs erste schon, aber ich werde sicher weitere Fragen stellen xD
Gruß
GURKE