ich möchte folgenden String filtern mit Regex,
bekomme in aber nicht richtig zusammengebaut.
ich hoffe ihr könnt mir helfen.
Das Tutorial hab ich schon gelesen.
Der String lautet:
170GERN117PLG00103001000000.pdf
Folgende Regular Expressions hab ich bisher:
^[0-9]*[a-zA-Z]*[0-9]*[a-zA-Z]*[0-9]{3}
Ergibt bisher (nur Fettgedruckter Teil): 170GERN117PLG00103001000000.pdf
Ziel sollte aber sein (nur Fettgedruckter Teil): 170GERN117PLG00103001000000.pdf
danke erstmal für eure Anworten.
Die Dateiendung hab ich weggeschnitten.
Welchen Sammelbehälter würdest du am besten für die Files nutzen
und welche Strategie benutze ich um zu schauen, ob es die Datei nur einmal gibt?
auf das Tool welches die PDF's aus den dwg bzw. dxf-Files erzeugt habe ich keinen Einfluß.
Daher kann ich mir nur ein Tool basteln welches die nicht konvertierten ausspuckt.
ich habe ein Verzeichnis ausgelesen in dem sich Dateien befinden die sich bis auf die Dateiendung ähneln, diese sind dwg, dxf und pdf Dateien
DirectoryInfo objDI = new DirectoryInfo(strSourceSelectedPath);
FileInfo[] fi = objDI.GetFiles();
Aus den dwg bzw. dxf-Files werden pdf's erzeugt.
Jetzt kommt es allerdings bei 3000 oder mehr Dateien vor, das einige nicht erzeugt werden.
Nun möchte ich die dwg bzw. dxf's rausfiltern, die nicht gemacht wurden.
Dazu muss ich diese mit den pdf's abgleichen, ich weiß allerdings noch nicht wie ich dies machen soll.
Ich hoffe, ihr habt da eine Idee.
In einem DataGridView möchte ich das die Columns die Breite
des darin enthaltenen Textes annehmen.
Dies ist ja auch kein Problem mit AutoSizeColumnsMode = AllCells.
Dabei ist die Spaltenbreite allerdings nicht manuell veränderbar.
Wenn ich AutoSizeColumnsMode = None nehme, kann ich zwar die Spaltenbreite
manuell anpassen, jedoch nehmen in der Grundeinstellung die Columns nicht die Breite des Textes an.
danke für deine Antwort, die für mich schon mal ein guter Ansatz ist.
Ich möchte allerdings das eine einzelne seperate Klasse alle Objekte aufnimmt.
Wie lässt sich das realisieren?
wie schaffe ich es Objekte zu verschachteln.
Konkretes Beispiel:
Ich drücke einen Button, darauf hin baut sich ein TreeView aus der Datenbank zusammen.
Den Tree hab ich rekursiv aufgebaut. Jeder Node hat eine eigene ID, eigene Rechte und ein RaiseEvent ob sich beim Click-Event eine Aktion ausgelöst werden darf.
Wenn sich nun nach klicken des Node ein DataGridView geöffnet wird, kann ich eine Row selektieren, welche wiederum eine eigene IDbesitzt. Das klicken auf eine Row öffnet sich eine ListView im unteren Teil der Form. Diese Einträge haben wiederum auch eine eigene ID. Zu diesem Eintrag soll es möglich sein einen Untereintrag zu erstellen usw.
D.h. alles hängt voneinander ab.
Wie schaffe ich es die einzelnen Objekte aneinander zu hängen bzw. zu verschachteln?
Mir fehlt da der Ansatz.
habe deine Antwort erst jetzt gesehen und versuche es umzusetzen.
Werde mich melden wenn es geklappt hat.
Den Makrorecorder hab ich kaum genutzt bisher, genausowenig die VBA-Hilfe
muss ich zu meiner Schande gestehen.
Funktioniert auch soweit ganz gut.
Jetzt hab ich aber noch folgende Fragen:
1.Wie kann ich zu einer Textmarke springen?
2.Hier ist das Beispiel mit einem Bild gemacht, wie heißt den der zugehörige Member für Text?
// Laufende Word-Instanz holen
object word = Marshal.GetActiveObject("Word.Application");
// Metadaten von Word.Application abrufen
Type wordType=word.GetType();
// Dateiname festlegen
string fileName = @"C:\test.bmp";
// Aktuelles Dokument abrufen
object document = wordType.InvokeMember("ActiveDocument", BindingFlags.GetProperty, null, word, new object[0]);
// Absätz-Auflistung des Dokuemnts abrufen
object paragraphs=document.GetType().InvokeMember("Paragraphs",BindingFlags.GetProperty,null,document,new object[0]);
// 2. Absatz des Dokuments abrufen
object secondPara = paragraphs.GetType().InvokeMember("Item", BindingFlags.InvokeMethod, null, paragraphs, new object[1] { 2 });
// Range des Absatzes abrufen
object range = secondPara.GetType().InvokeMember("Range", BindingFlags.GetProperty, null, secondPara, new object[0]);
// Variablen für übrige ref-Parameter erzeugen
object linkToFile = false;
object saveWithDocument = true;
// Bilder-Auflistung des Dokuemnts abrufen
object shapes = document.GetType().InvokeMember("InlineShapes", BindingFlags.GetProperty, null, document, new object[0]);
// Bild zufügen
shapes.GetType().InvokeMember("AddPicture", BindingFlags.InvokeMethod | BindingFlags.OptionalParamBinding, null, shapes, new object[4] { fileName, linkToFile, saveWithDocument, range });
ich versuche gerade ein Word-Template mit Late Binding zu füllen.
Ein Teil des Template besteht aus einer Tabelle.
Nun möchte ich bestimmte Zellen mit Inhalt füllen.
Wie mach ich das und wie springe ich zu den einzelnen Zellen?
Folgenden Code habe ich bisher dazu geschrieben:
erstmal danke für deine Tipps, werde diese dann mal in die Tat umsetzen.
Über die Suche csv import bin leider vorher nicht recht fündig geworden.
Wie du schon richtig festgestellt hast, hatte ich zuerst gedacht, der Weg über Excel wäre besser und das Thema hier gut aufgehoben.
Nun bin ich schlauer.
sieht so aus als wenn es etwas Kosten würde.
Daher würde ich es gerne selbst programmieren.
Ob es nun eine Oracle oder eine SQL Datenbank macht ja
auch eigentlich keinen Unterschied, der Vorgang ist ja derselbe,
nur das Handling anders.
Sonst vielleicht ne Idee?
ich möchte eine CSV-Datei, die Komma separiert ist in eine Oracle Datenbank importieren.
Dabei ist es leider so, daß die separierten Felder in unterschiedliche Tabellen der DB müssen.
Ich hatte mir überlegt ob ich die CSV-Datei nicht erst nach Excel exportiere und dann in die DB.
Soll natürlich möglichst performant sein.
Ich weiss jetzt nicht auf welche Art und weise ich es lösen soll.
Wie kann man denn eine CSV-Datei nach Excel exportieren?
Vielen Dank für Eure Hilfe.