with Ada.Directories; use Ada.Directories; with Ada.Exceptions; use Ada.Exceptions; with Ada.Calendar; use Ada.Calendar; with Ada.Calendar.Formatting; use Ada.Calendar.Formatting; with Ada.Strings.UTF_Encoding.Wide_Wide_Strings; use Ada.Strings.UTF_Encoding.Wide_Wide_Strings; package body FehlermeldungSchreiben is procedure MeldungSchreiben (MeldungExtern : in Wide_Wide_String) is begin case Exists (Name => "Meldungen") is when True => Open (File => DateiMeldung, Mode => Append_File, Name => "Meldungen", Form => "WCEM=8"); when False => Create (File => DateiMeldung, Mode => Out_File, Name => "Meldungen", Form => "WCEM=8"); end case; Put (File => DateiMeldung, Item => Decode (Item => Local_Image (Date => Clock, Include_Time_Fraction => False)) & ": " & MeldungExtern); Close (File => DateiMeldung); exception when StandardAdaFehler : others => Ada.Text_IO.Put (Item => "FehlermeldungSchreiben.MeldungSchreiben - Konnte nicht geschrieben werden" & Exception_Information (X => StandardAdaFehler)); case Is_Open (File => DateiMeldung) is when True => Close (File => DateiMeldung); when False => null; end case; end MeldungSchreiben; procedure MeldungSchreibenASCII (MeldungExtern : in String) is begin case Exists (Name => "Meldungen") is when True => Ada.Text_IO.Open (File => DateiMeldungASCII, Mode => Ada.Text_IO.Append_File, Name => "Meldungen", Form => "WCEM=8"); when False => Ada.Text_IO.Create (File => DateiMeldungASCII, Mode => Ada.Text_IO.Out_File, Name => "Meldungen", Form => "WCEM=8"); end case; Ada.Text_IO.Put (File => DateiMeldungASCII, Item => Local_Image (Date => Clock, Include_Time_Fraction => False) & ": " & MeldungExtern); Ada.Text_IO.Close (File => DateiMeldungASCII); exception when StandardAdaFehler : others => Ada.Text_IO.Put (Item => "FehlermeldungSchreiben.MeldungSchreibenASCII - Konnte nicht geschrieben werden" & Exception_Information (X => StandardAdaFehler)); case Ada.Text_IO.Is_Open (File => DateiMeldungASCII) is when True => Ada.Text_IO.Close (File => DateiMeldungASCII); when False => null; end case; end MeldungSchreibenASCII; end FehlermeldungSchreiben;