Ts61
-
Gesamte Inhalte
20 -
Benutzer seit
-
Letzter Besuch
Inhaltstyp
Profile
Forum
Downloads
Kalender
Blogs
Shop
Beiträge von Ts61
-
-
Hallo zusammen, ich habe neu mit dem c# Programmieren angefangen. Ich hab mich an einem Projekt versucht, bei dem ich bestimmte Dateien und Bilder aus der Datenbank hole und in einem bestimmten Ordner auf dem Desktop speichere. Bisher kriege ich es hin, die Bilder die gespeichert wurden zu einem PDF zu konvertieren. Ich möchte jetzt eine neue Funktion schreiben, bei der ich die Dateien die kein Bild ist als leeres PDF mit einer Notiz zu speichern. Das funktioniert nicht so richtig, kann mir da jemand weiterhelfen?
public void AttachFileToPdfSite(string srcFileName, string dstFilename, string originFileName) { Rectangle pageSize = null; using (var ms = new MemoryStream()) { var document = new Document(pageSize, 0f, 0f, 0f, 0f); PdfWriter.GetInstance(document, ms).SetFullCompression(); document.Open(); document.Add(new Paragraph("Hello World")); document.Close(); File.WriteAllBytes(dstFilename, ms.ToArray()); } }
Zitatnamespace summit.Tools.ReportInPdf.Cmd2 { internal class Program { public static List<Msg> mWorkingListOfMessages; public static string mWorkingLogTextFileName; public static string mWorkingLogJsonFileName; public static string mWorkingGuid; public static void Main() { mWorkingListOfMessages = new List<Msg>(); mWorkingGuid = Guid.NewGuid().ToString(); PdfConverter localPdfWorker = null; AddMsg("Start"); mWorkingLogTextFileName = GetLogFilePath(".log"); mWorkingLogJsonFileName = GetLogFilePath(".json"); try { AddMsg("PdfConverter wird initialisiert"); localPdfWorker = new PdfConverter(41); } catch (Exception ex) { AddMsg(ex); } if (localPdfWorker != null) { AddMsg("PdfConverter wurde erfolgreich initialisiert!"); localPdfWorker.MessageCreated += RemoteMessageCreated; try { AddMsg("PdfConverter liest Daten"); localPdfWorker.ReadData(); } catch (Exception ex) { AddMsg(ex); } if (localPdfWorker.ListOfFiles != null) { foreach (var oFile in localPdfWorker.ListOfFiles) AddMsg($"{oFile.ID.ToString("000000")} {oFile.NewFileName}"); localPdfWorker.WriteSingleFiles(); byte[] localMergedBytes = null; var localPdfBytes = new List<byte[]>(); byte[] localPdfData = null; foreach (var oFile in (from oPdfFile in localPdfWorker.ListOfFiles where System.IO.File.Exists(oPdfFile.SysFileInfo.FullName) select oPdfFile).ToList()) { try { localPdfData = System.IO.File.ReadAllBytes(oFile.SysFileInfo.FullName); } catch (Exception ex) { AddMsg($"{ex.Message}{Environment.NewLine}"); localPdfData = null; } if (localPdfData != null) { localPdfBytes.Add(localPdfData); } if (localPdfBytes != null) { try { localMergedBytes = localPdfWorker.MergeFiles(localPdfBytes); } catch (Exception ex) { AddMsg($"{ex.Message}{Environment.NewLine}"); localMergedBytes = null; } } } if (localMergedBytes != null) { try { System.IO.File.WriteAllBytes(System.IO.Path.Combine(localPdfWorker.Config.ExportPath, "gesamt.pdf"), localMergedBytes); } catch (Exception ex) { AddMsg($"{ex.Message}{Environment.NewLine}"); } } if (System.IO.File.Exists(System.IO.Path.Combine(localPdfWorker.Config.ExportPath, "gesamt.pdf"))) { foreach (var oFile in (from oPdfFile in localPdfWorker.ListOfFiles where System.IO.File.Exists(oPdfFile.SysFileInfo.FullName) select oPdfFile).ToList()) { if (System.IO.File.Exists(System.IO.Path.Combine(oFile.SysFileInfo.FullName ))) { try { System.IO.File.Delete(oFile.SysFileInfo.FullName ); AddMsg($"The File: {oFile.SysFileInfo.FullName } is deleted!"); } catch (Exception e) { AddMsg(e); } } } } if (System.IO.File.Exists(System.IO.Path.Combine(localPdfWorker.Config.ExportPath, "gesamt.pdf"))) { try { localPdfWorker.CmdtoReport(41); } catch (Exception e) { Console.WriteLine(e); throw; } } } } else { AddMsg("PdfConverter konnte nicht initialisiert werden!"); } if (mWorkingListOfMessages != null && mWorkingListOfMessages.Count > 0) { try { System.IO.File.WriteAllText(mWorkingLogJsonFileName, Newtonsoft.Json.JsonConvert.SerializeObject(mWorkingListOfMessages)); } catch (Exception ex) { Console.WriteLine(ex.Message); } } } }
Ich hoffe die Codestücke reichen zum helfen.
Vielen Dank!
Zitatforeach (var oFile in (from oPdfFile in localPdfWorker.ListOfFiles where System.IO.File.Exists(oPdfFile.SysFileInfo.FullName) select oPdfFile).ToList()) {
Hier läuft der auf ein Fehler:"der objektverweis wurde nicht auf eine objektinstanz festgelegt".
-
Danke an jeden von euch !!
-
vor 18 Minuten schrieb Ts61:
Config.cs namespace ConfigTest { public class Config { public BaseExportFormat ExportFormat { get; set; } //public FlfFormat ExportFormat { get; set; } public string Irgendwas { get; set; } } }
Der BaseExportformater ist eine abstrakte klasse von der hängen die klassen Csv..., Flf... ab. Sobald ich in der Config.cs Baseexporter rufe gibt er mir ein null zurück. Ich würde in der Config.Json das so ändern das er je nach dem welche klasse werte hat diese nimmt.
-
Program.cs using ConfigTest; using Newtonsoft.Json; var configString = File.ReadAllText("config.json"); var config = JsonConvert.DeserializeObject<Config>(configString); Console.WriteLine(config.GetType()); Console.WriteLine(config.ExportFormat.GetType()); Config.json { "Irgendwas": 123, "ExportFormat": { "$type": "ConfigTest.FlfFormat, ConfigTest", "FileName": "export1.dat", "Columns": "name,datum,miregal", "Lengths": "20,8,50" } } Config.cs namespace ConfigTest { public class Config { public BaseExportFormat ExportFormat { get; set; } //public FlfFormat ExportFormat { get; set; } public string Irgendwas { get; set; } } } ExportFormat.cs namespace ConfigTest { public abstract class BaseExportFormat { public string FileName { get; set; } } } FlfFormat.cs namespace ConfigTest { public class FlfFormat:BaseExportFormat { public string Columns { get; set; } public string Lengths { get; set; } } } CsvFormat.cs namespace ConfigTest { public class CsvFormat : BaseExportFormat { public string Columns { get; set; } } }
Hi, wie kann ich über config.Json Datei verhindern das er auf einen Fehler läuft?
-
Vielen Dank!
-
Sorry, mein Fehler es waren 51% ga1, wenn ich also 50 Punkte habe, auch wenn ich in ga2 mangelhaft stehe, bestehe ich ohne in die Mep zu müssen?
-
Hallo zusammen, ich weiß nicht ob das die richtige stelle zum Fragen ist, aber ich frage mal trotzdem.
Also ich hatte bei meinem ersten Anlauf (FIAE): GA1 52%, GA2 36%, WISO 72% und musste dann zur Mep.
Hab die Mep nicht bestanden und hab GA2 jetzt wiederholt, wenn ich jetzt 37% habe, muss ich dann wieder zur Mep oder habe ich dann bestanden? -
vor 9 Minuten schrieb Whitehammer03:
Schau dir am besten mal die Videoreihe zu Subnetting von Sebastian Philippi an. Er erklärt es wirklich sehr gu
Mach ich, danke!
- Whitehammer03 reagierte darauf
- 1
-
-
vor 1 Minute schrieb Ma Lte:
Als Hinweis ür die Subnetzmasken der Netze: Welche Zweierpotenz ist 64? Also 2^? = 64?
Hilfreich ist für die Aufgabe auch folgender Link:
https://www.itslot.de/2019/02/ipv4-subnetting-berechnen-schritt-fur.html
2^6😅
Vielen Dank, ich schaue mir das mal an!
-
vor 16 Stunden schrieb Maniska:
Jetzt musst du halt noch berechnen welche SNM rauskommt wenn man ein /24 in 4 gleiche Teile teilt
Wie ist das genau gemeint, 192.168.164.1/24 = 255.255.255.0 ?
-
vor 16 Stunden schrieb Ma Lte:
Was musst du denn als Nächstes ermitteln, um weiter zu kommen? Du hast ja nun die Info, dass die vier zu bildenden Netze eine Kapazität von 64 Hosts haben.
Genau, ab jetzt hängt es bei mir. Ich würde jetzt davon ausgehen, dass die Netze sich in dem Bereich 64 befinden, also das war mein erster Anstaz 192.168.164.1 - 192.168.164.64. Der Ansatz ist halt Falsch von mir 😅
-
Ich würde als erstes die 255 durch 4 Teilen, das wäre pro Adresse doch 64 Host´s? Für die reservierten müsste ich dann 64 -2 rechnen also 62 und dann?
-
-
Ich danke euch allen, ich denke auch das Ma Lte´s Lösungsweg der richtige ist.
-
vor 6 Minuten schrieb Montaine:
Mit dieser Angabe kommst Du eigentlich ganz einfach direkt auf die Subnetzmaske, die Anzahl der erforderlichen Hosts spielen dabei eigentlich überhaupt keine Rolle.
Vielen dank für die schnelle Rückmeldung!
Würde es dir etwas ausmachen deinen Rechenweg anzugeben, also wie du ganz einfach darauf kommen würdest.
-
vor 3 Minuten schrieb Ma Lte:
Damit hast du eine /27-Subnetzmaske.
Vielen dank für die schnelle Rückmeldung, also würde das bedeuten die antwort ist 255.255.255.224 ?
-
-
Guten Tag,
ich bräuchte die FIAE Abschlussprüfung 2019 Sommer & Winter + Lösungen.
Zusätlich bräuchte ich nur die Lösungen von Sommer 2020, Winter 2020/21 und Sommer 2021.
Bitte an diese Email senden: trabzon-k61@outlook.de
Vielen Dank!
C#/ .Net Erste Anwendung
in .NET
Geschrieben · Bearbeitet von Ts61
public void AttachFileToPdfSite(string srcFileName, string dstFilename, string originFileName) { var pageSize = new Rectangle(PageSize.A4); using (var ms = new MemoryStream()) { var document = new Document(pageSize, 0f, 0f, 0f, 0f); PdfWriter.GetInstance(document, ms).SetFullCompression(); string originFilename = Path.GetFileName(originFileName); document.Open(); document.Add(new Paragraph("This File could not be open ")); document.AddHeader("This is the Header of the File", "ASD"); PdfWriter writer; writer = PdfWriter.GetInstance(document,new FileStream(dstFilename,FileMode.Open)); PdfFileSpecification pfs = PdfFileSpecification.FileEmbedded(writer, Path.Combine(dstFilename,originFileName), originFileName, null); writer.AddFileAttachment(pfs); document.Close(); File.WriteAllBytes(Path.Combine(dstFilename,originFilename + ".pdf"), ms.ToArray()); } }
Ich versuche eine Datei in ein Pdf einzubetten, leider kriege ich den Fehler "der zugriff auf den Pfad " " wurde verweigert.
Kann mir da einer helfen?
Vielen Dank im Voraus.