Willkommen auf myCSharp.de! Anmelden | kostenlos registrieren
 | Suche | FAQ

Hauptmenü
myCSharp.de
» Startseite
» Forum
» Suche
» Regeln
» Wie poste ich richtig?

Mitglieder
» Liste / Suche
» Wer ist online?

Ressourcen
» FAQ
» Artikel
» C#-Snippets
» Jobbörse
» Microsoft Docs

Team
» Kontakt
» Cookies
» Spenden
» Datenschutz
» Impressum

  • »
  • Community
  • |
  • Diskussionsforum
Wie stelle ich Umlaute in einer CSV richtig dar? Und wie lese ich die Dateinamen ein?
moma-Soft
myCSharp.de - Member



Dabei seit:
Beiträge: 30

Themenstarter:

Wie stelle ich Umlaute in einer CSV richtig dar? Und wie lese ich die Dateinamen ein?

beantworten | zitieren | melden

Guten Tag,

danke nochmals für bereits erhaltene Informationen. Jetzt habe ich allerdings noch 2 Probleme:


var checked= model.DoneErrorMeterEntrySerialnumbers;
                    var workingList = new List<iem_exampleList>();
                    workingList.Add(new iem_exampleList());
                    foreach (var example in checked)
                    {                       
                        if (!String.IsNullOrEmpty(meter))
                        {
                            var addItem = db.iem_exampleList.Where(x => x.serialnumber == example).FirstOrDefault();
                            addItem.processing = addItem.processing + "\n";
                            workingList.Add(addItem);
                        }
                    }
                    string filePath = @"beispielPath\beispiel.csv"; 
                    using (var writer = new StreamWriter(filePath))
                    using (var csv = new CsvWriter(writer, CultureInfo.InvariantCulture))
                    {                        
                        var header = new classForHeader();
                        csv.Configuration.Delimiter = ";";  
                        csv.WriteRecord<classForHeader>(header);
                        csv.WriteRecords(workingList);
                        
                    }


1) Wie kann ich Umlaute und scharfe s in der CSV Datei normal darstellen? ist das überhaupt möglich? Wenn ja, bitte ich um Informationen, wie, da ich es nach langer Recherche nicht fand.

2) Ein weiteres Problem wäre noch: Wie ist es möglich, alle vorhandenen csv-Dateibezeichnungen zu erhalten? Damit alte Dateien nicht immer automatisch überschrieben werden und einfach die Dokumente fortlaufend gekennzeichnet sind?

Danke im Voraus für die Rückmeldungen.

MbG
private Nachricht | Beiträge des Benutzers
BerndFfm
myCSharp.de - Team

Avatar #avatar-3299.jpg


Dabei seit:
Beiträge: 3727
Herkunft: Frankfurt a.M.

beantworten | zitieren | melden

"Normal" gibt es nicht.

Die Umlaute sind Sonderzeichen und werden kodiert. Dafür gibt es verschiedene Zeichensätze. Die kann man im StreamWriter angeben.

Es gibt :


Encoding.GetEncoding(850)                     // MS-DOS ASCII Zeichensatz
Encoding.GetEncoding(1252)                   // Windows ANSI Zeichensatz
Encoding.UTF8                               // Universeller Zeichensatz, Standard bei .NET

Grüße Bernd
Die kostenlose Unternehmenssoftware : [url=https://seven-c.de/die-quasar-3-community-version/]Die Quasar-3 Community Version[/url] Workshop : [url=https://download.seven-c.de/files/datenbankenhowto.htm]Datenbanken mit ADO.NET[/url]
private Nachricht | Beiträge des Benutzers
Abt
myCSharp.de - Team

Avatar #avatar-4119.png


Dabei seit:
Beiträge: 15618
Herkunft: BW

beantworten | zitieren | melden

Es wäre ganz nett, wenn Du Dich beim Schreiben von Themen ein bisschen an [Hinweis] Wie poste ich richtig? orientierst; dass Du eine Frage hast, ist klar: Du befindest schließlich in einem Forum ;-)
Ich hab den Titel nun mal angepasst, dass man damit überhaupt was anfangen kann.
Zitat
Wie kann ich Umlaute und scharfe s in der CSV Datei normal darstellen?
Stichwort: Encoding.

Findest im Forum sicherlich hunderte Treffer zu; auch zu CSV hier im Forum.
Taucht immer wieder auf.

Erster Forentreffer dazu: Wieso werden Umlaute nach dem (De)Serialisieren von CSV-Dateien nicht richtig dargestellt (UTF-7)?
Zitat
Wie ist es möglich, alle vorhandenen csv-Dateibezeichnungen zu erhalten?
Fragen wie "ist es möglich" können immer, ausnahmslos immer mit Ja beantwortet werden.
Alles nur eine Frage des Aufwands. Daher sind solche Fragen wenig zielführend ;-)

In diesem Fall: les doch einfach den Dateiname aus.
private Nachricht | Beiträge des Benutzers
moma-Soft
myCSharp.de - Member



Dabei seit:
Beiträge: 30

Themenstarter:

beantworten | zitieren | melden

Ok danke mal für eure Rückmeldung, Frage 2 hat sich schon erübrigt und ja da hast du sicher recht Abt =)

Bei Frage 1 ist für mich nur noch die Frage (was ich gerade schon eine Zeit probierte), wo ich den Quellcode hinschreiben sollte, damit das für genau mein Beispiel passt:
- Las z.B. dass es in dem using nach einem Beistrich angegeben wird bei dem StreamWriter
- Las auch über einen StreamReader das gleiche, nur dass ich in diesem Fall keinen Reader benötige

Vlt. gibt es ein kleines Beispiel auf meinen Quellcode bezogen.

LG
private Nachricht | Beiträge des Benutzers
BerndFfm
myCSharp.de - Team

Avatar #avatar-3299.jpg


Dabei seit:
Beiträge: 3727
Herkunft: Frankfurt a.M.

beantworten | zitieren | melden

Das steht in der Dokumentation zu StreamWriter :


 using (StreamWriter sw = new StreamWriter(file, false, Encoding.UTF8)) ...

Grüße Bernd
Die kostenlose Unternehmenssoftware : [url=https://seven-c.de/die-quasar-3-community-version/]Die Quasar-3 Community Version[/url] Workshop : [url=https://download.seven-c.de/files/datenbankenhowto.htm]Datenbanken mit ADO.NET[/url]
private Nachricht | Beiträge des Benutzers
moma-Soft
myCSharp.de - Member



Dabei seit:
Beiträge: 30

Themenstarter:

beantworten | zitieren | melden

Habe es gerade probiert und funktioniert genauso, wie es sein soll.

Danke vielmals, denn dies ist mir somit klar geworden.

LG
private Nachricht | Beiträge des Benutzers
moma-Soft
myCSharp.de - Member



Dabei seit:
Beiträge: 30

Themenstarter:

Berechtigungsproblem

beantworten | zitieren | melden

Also ich dachte, da das alles super local funktioniert, dass das Problem gelöst ist. Aber ich kam drauf es fehlt noch folgendes:

- Was ist wenn das Verzeichnis bestimmte Berechtigungen benötigt, da auf dieses Verzeichnis nur bestimmte Leute zugreifen können

Über AD-Gruppen funktioniert dies in diesem Fall sicher nicht und deshalb ist meine Frage, da eine Fehlermeldung beim Erstellen ausgelöst wird, da es für dieses Verzeichnis noch keine Berechtigungen gibt:
- Wo muss ich Berechtigungen anfordern, wenn dies durch das SW-Tool gemacht wird? Welcher "User" erledigt das?
- Welcher User muss foglich dafür die Berechtigungen erhalten? (Wird ws nicht über AD-Gruppe möglich sein)


Bitte nochmals um eure Hilfe.
DANKE
private Nachricht | Beiträge des Benutzers
BerndFfm
myCSharp.de - Team

Avatar #avatar-3299.jpg


Dabei seit:
Beiträge: 3727
Herkunft: Frankfurt a.M.

beantworten | zitieren | melden

Eine Berechtigung kann eine Software nicht einrichten. Wenn das ginge bräuchte man keine Berechtigungen.

Das muss immer der Adminstrator der IT einrichten.

Man kann Schreib- und Lesevorgänge immer in einen try-catch Block packen, dann bekommt man immer aussagekräftige Fehlermeldungen.

Grüße Bernd
Die kostenlose Unternehmenssoftware : [url=https://seven-c.de/die-quasar-3-community-version/]Die Quasar-3 Community Version[/url] Workshop : [url=https://download.seven-c.de/files/datenbankenhowto.htm]Datenbanken mit ADO.NET[/url]
private Nachricht | Beiträge des Benutzers
moma-Soft
myCSharp.de - Member



Dabei seit:
Beiträge: 30

Themenstarter:

beantworten | zitieren | melden

Ok danke für die info, weil ich versuchte jetzt noch, es mit Vertrauenseinstellungen zu lösen, mal sehen ob das ev. funktioniert.

Sonst werde ich es eh über einen try-catch Block probieren zu lösen.

LG
private Nachricht | Beiträge des Benutzers
moma-Soft
myCSharp.de - Member



Dabei seit:
Beiträge: 30

Themenstarter:

beantworten | zitieren | melden

Ok jetzt stell ich mir noch folgende Frage:
- Laut deiner Antwort erledigt das der IT Admin, was sicher korrekt ist
- Aber meine Frage dazu jetzt:
- Welche Servereinstellungen müssen dabei verändert werden?
- Wie müssen diese verändert werden

Denn das sind die Informationen, die ich weitergeben muss.

DANKE.
LG
private Nachricht | Beiträge des Benutzers
Abt
myCSharp.de - Team

Avatar #avatar-4119.png


Dabei seit:
Beiträge: 15618
Herkunft: BW

beantworten | zitieren | melden

Das kann Dir hier pauschal niemand beantworten, weil niemand hier Deine Umgebung kennt.
Du musst Deinem IT Admin sagen, was Du brauchst und er muss Dir das umsetzen - hier kann Dir das keiner abnehmen.
private Nachricht | Beiträge des Benutzers
moma-Soft
myCSharp.de - Member



Dabei seit:
Beiträge: 30

Themenstarter:

beantworten | zitieren | melden

Ok, ja stimmt, hast du recht, weil das einzige was ich dazu sagen kann aus dem von mir erstellten IT-Konzept ist:

1) Es gibt einen IIS Server (.NET Framework 4.5.2 | Entity Framework 6.1.3) für die Web-App

2) Diese Komponente ist verbunden mit einen LDAP Server (Active Directory)

3) Ist auch verbunden mit einem SQL Server 2016

4) und ist schlussendlich verbunden mit dem PC (Anwender)


Würden diese Informationen reichen um die Einstellungsveränderungen definieren zu können?

LG
private Nachricht | Beiträge des Benutzers
Abt
myCSharp.de - Team

Avatar #avatar-4119.png


Dabei seit:
Beiträge: 15618
Herkunft: BW

beantworten | zitieren | melden

Nein, weil keiner hier das Berechtigungssystem eurer IT kennt.
Natürlich können wir sagen, dass man im IIS einen Benutzer hinterlegen kann; aber hilft Dir kaum.

Die IT muss Dir die Rahmenbedingungen geben - nicht wir.

Natürlich kannst Du beratend der IT zur Seite stehen, wie man sowas macht; aber klopf erst mal ab was Dir die IT bietet.
Selten ist man der erste mit so einer Anfrage. Und Vorschläge sind halt meist individuell - und wir kennen die Umgebung nicht.
private Nachricht | Beiträge des Benutzers
moma-Soft
myCSharp.de - Member



Dabei seit:
Beiträge: 30

Themenstarter:

beantworten | zitieren | melden

Ok, aber danke für die umfangreichen Informationen darüber.


LG
private Nachricht | Beiträge des Benutzers
moma-Soft
myCSharp.de - Member



Dabei seit:
Beiträge: 30

Themenstarter:

Applikationsbenutzer

beantworten | zitieren | melden

Meine Vorgehensweise findet nun folgendermaßen statt:

1) Es wurde ein Applikationsbenutzer angefordert (AD-Benutzer ohne Outlook)

2) Und jetzt kommt wiederum eine Frage von meiner Seite, wo mir ev. Infos gegeben werden können

2.1) Wo muss der User am IIS-Server hinterlegt werden? Weil es läuft noch eine weitere Web-App auf diesem Server und der Sysuser soll nur für diese Web-App vorhanden sein und nicht für andere

2.2) Anschließend gebe ich dem IT-Admin noch den Link, wo dieser Sysuser eine Berechtigung benötigt


Wenn dies alles richtig eingestellt ist, dann müsste das funktionsfähig sein und somit der Datenexport in csv-Dateien möglich sein.
private Nachricht | Beiträge des Benutzers
Papst
myCSharp.de - Experte



Dabei seit:
Beiträge: 352
Herkunft: Kassel

beantworten | zitieren | melden

Beim IIS ist das Stichwort AppPool. Der AppPool bekommt einen User.
private Nachricht | Beiträge des Benutzers
moma-Soft
myCSharp.de - Member



Dabei seit:
Beiträge: 30

Themenstarter:

beantworten | zitieren | melden

Ah ok und das bedeutet da gibt es für jede Web-App darauf einen eigenen AppPool? Damit diese nicht auf andere Apps die auch auf dem Server sind einwirken.
private Nachricht | Beiträge des Benutzers
Abt
myCSharp.de - Team

Avatar #avatar-4119.png


Dabei seit:
Beiträge: 15618
Herkunft: BW

beantworten | zitieren | melden

Les Dir einfach mal die Doku dazu durch; das würde Dir schon 90% der Fragen beantworten, und das viel schneller, als es ein Forum kann.
Zitat
Ah ok und das bedeutet da gibt es für jede Web-App darauf einen eigenen AppPool?
Ja
private Nachricht | Beiträge des Benutzers
moma-Soft
myCSharp.de - Member



Dabei seit:
Beiträge: 30

Themenstarter:

beantworten | zitieren | melden

Ok dann hört sich das sehr gut an,

werde ich mir auch noch ansehen. Danke
private Nachricht | Beiträge des Benutzers
moma-Soft
myCSharp.de - Member



Dabei seit:
Beiträge: 30

Themenstarter:

beantworten | zitieren | melden

Hab mir jetzt ein paar Sachen durchgelesen und zu dem Entschluss gekommen, mir mal local so einen user zu konfigurieren (am Notebook)

- Da weis i allerdings noch nicht, mach ich das im Visual Studio? Ws. nicht, da es ja auf den IIS-Server bezogen ist, wenn ich recht habe, wie und wo mach ich das?

- Welche Einstellungskriterien muss ich dabei berücksichtigen?

- Wie kann ich das local testen ob es funktionsfähig ist bzw. was muss ich einstellen für:
=> Alles was durch ein Softwaretool (MVC) wird von diesem User durchgeführt
=> Wo stellt man die Berechtigungen für diesen Benutzer ein?
=> Wo stellt man den Datenzugriff ein? (LESE- und SCHREIBRECHT)
=> Sah schon online was von: Worker Processes und dann View Requests, ...

Vlt weis da ja wer eine Anleitung, wo ich das alles finde oder kann mir eine kurze Anleitung/Vorgehensweise definieren.

DANKE
private Nachricht | Beiträge des Benutzers
Abt
myCSharp.de - Team

Avatar #avatar-4119.png


Dabei seit:
Beiträge: 15618
Herkunft: BW

beantworten | zitieren | melden

Zitat von moma-Soft
- Da weis i allerdings noch nicht, mach ich das im Visual Studio? Ws. nicht, da es ja auf den IIS-Server bezogen ist, wenn ich recht habe, wie und wo mach ich das?
Im IIS.

Alles, wirklich alles dazu ist in den Microsoft Docs zu finden.
Getting Started with the IIS Manager in IIS

Wenn Du keine Rechte hast, dann musst Du sie Dir holen.
Gewisse Settings kann man mit dem Web Deployment Paket mitgeben.

Beachte den Inhalt in der Warn-Box.
Zitat von moma-Soft
- Welche Einstellungskriterien muss ich dabei berücksichtigen?
Wir kennen Deine Anforderungen nicht.

Schau Dir an, welche Optionen es gibt.
- Les Dir durch um zu verstehen, was sie machen
- Evaluiere, welche Option Deine Software benötigt

Ja das kostet Zeit, aber das ist nun mal Dein Job als Entwickler.
Zitat von moma-Soft
=> Alles was durch ein Softwaretool (MVC) wird von diesem User durchgeführt
Keine Ahnung was ein Software-Tool "MVC" sein soll.
Zitat von moma-Soft
=> Wo stellt man die Berechtigungen für diesen Benutzer ein?
Am Benutzer.
Zitat von moma-Soft
=> Wo stellt man den Datenzugriff ein? (LESE- und SCHREIBRECHT)
Im Dateisystem.

Das hier wird so langsam ein Endlosthread, was nicht im Sinne des Forums ist.
Deine Fragen hier zu IIS haben mittlerweile null mit dem eigentlichen Thema zutun.
[Hinweis] Wie poste ich richtig?
private Nachricht | Beiträge des Benutzers
moma-Soft
myCSharp.de - Member



Dabei seit:
Beiträge: 30

Themenstarter:

beantworten | zitieren | melden

Da werd ich mich die nächsten Tage hineinlesen.


=> MVC ist eine C# - Model-View-Controller Anwendung (aber es ist sicher nicht relevant welche Art von Anwendung es ist)




Danke für das eingehen auf die einzelnen (kleinen) Fragestellungen und hoffe das wird jetzt alles problemlos funktionieren. =)


Wünsche schon mal schöne Feiertage und Frohe Weihnachten.

LG
private Nachricht | Beiträge des Benutzers
T-Virus
myCSharp.de - Member



Dabei seit:
Beiträge: 1796
Herkunft: Nordhausen, Nörten-Hardenberg

beantworten | zitieren | melden

MVC ist ein Pattern und kein Anwendungstyp.
Meinst du damit eine WPF Anwendung oder eine Web Anwendung?
Bei WPF ist MVC der Weg um die Anwendung umzusetzen.

T-Virus
Developer, Developer, Developer, Developer....

99 little bugs in the code, 99 little bugs. Take one down, patch it around, 117 little bugs in the code.
private Nachricht | Beiträge des Benutzers
Abt
myCSharp.de - Team

Avatar #avatar-4119.png


Dabei seit:
Beiträge: 15618
Herkunft: BW

beantworten | zitieren | melden

Zitat von T-Virus
Bei WPF ist MVC der Weg um die Anwendung umzusetzen.

Denke Du meinst MVVM in diesem Falle, aber MVC ist auch nur eine Variation des MVP Patterns, und der wiederum ist durchaus in WinForrms und WPF anwendbar.

Aber da er von IIS spricht, dann wird er wohl eine ASP.NET MVC Anwendung haben (nicht Core, weil er mit anscheinend mit dem .NET Framework arbeitet).
Insgesamt arbeitet er eher mit alten, bzw. schon abgekündigten Dingen (.NET Framework, ASP MVC, EF 6)...
private Nachricht | Beiträge des Benutzers
T-Virus
myCSharp.de - Member



Dabei seit:
Beiträge: 1796
Herkunft: Nordhausen, Nörten-Hardenberg

beantworten | zitieren | melden

@Abt
Stimmt, verwechsel ich immer.
Passiert, wenn man nicht aktiv damit arbeitet...

Ansonsten arbeite ich leider auch noch primär mit dem Framework und WebForms.
Wird man leider nicht so leicht los. :(

Ansonsten sollten alle Fragen gelöst sein oder gibt es noch Bedarf?
Ebenfalls sollte ein Blick in die Dokus auch vieles klären.

Aber sonst wundert es mich doch etwas, dass du eine Web Anwendung entwickelst aber sogut wie 0 Kentnisse von grundlegenden Dingen wie Berechtigungen oder der generellen Architektur von den Anwendungen hast bzw. ihre Verknüpfung mit IIS etc.

Gerade dort sollte man sich auskennen, da hier eine Fehlkonfiguration katastrophal sein kann.
Hier können durch falsche Bedienung z.B. kritsiche Bereiche für anonyme Zugriffe offen gelegt werden, was in einigen Anwendungen die z.B. Dateien direkt im Web ablegen, sehr häufig zu ungewollten Zugriffen von extern führt.
Das dies auch in Hinsicht des Datenschutz schnell zu einem Problem werden kann und auch ziemlich teuer werden kann, sollte hier klar sein.
Deshalb solltest du dir solche Grundkentnisse umbedingt beibringen und dich einlesen!

T-Virus
Developer, Developer, Developer, Developer....

99 little bugs in the code, 99 little bugs. Take one down, patch it around, 117 little bugs in the code.
private Nachricht | Beiträge des Benutzers
moma-Soft
myCSharp.de - Member



Dabei seit:
Beiträge: 30

Themenstarter:

beantworten | zitieren | melden

@T-Virus: Ich meinte damit eine Web-Anwendung (also gibt auch die extra designte mobile Version für Handy, Tablet, ...)

@Abt: ASP.NET MVC Anwendung => korrekt


Mein Problem ist jetzt, dass ich jetzt über den Urlaub das mal bei mir local am Notebook testen wollte, einen Benutzer zu erstellen/anzulegen und zu "konfigurieren"

fand da ein paar Sites:https://www.windowspro.de/wolfgang-sommergut/web-server-iis-windows-10-installieren-konfigurierenhttps://www.itechguides.com/install-iis-windows-10/

aber leider keinen Link wo ich das wirklich probieren konnte, was z.B. dazu noch eingestellt werden muss in den Features... (IIS Server - und es handelt sich im Visual Studio um eine MVC Anwendung | Model-View-Controller)
Vlt kennt da wer eine Anleitung bzw. kann es hier posten, welche Schritte ich setzen muss
private Nachricht | Beiträge des Benutzers