horstvogel
Goto Top

Auf html Seite Erstellungsdatum bzw. Änderungsdatum einer TXT Datei ausgeben

Hallo Leute,
bei einer bestehenden Webanwendung möchte ich auf der html Seite, das Änderungsdatum einen bestimmen Datei txt die auf der Server Festplatte liegt ausgeben. Anwendung läuft auf einen Apache Tomcat. Die Textdatei liegt auch auf dem Server.
Danke schon mal.
der Horst

Content-ID: 231534

Url: https://administrator.de/forum/auf-html-seite-erstellungsdatum-bzw-aenderungsdatum-einer-txt-datei-ausgeben-231534.html

Ausgedruckt am: 21.12.2024 um 11:12 Uhr

colinardo
colinardo 03.03.2014 aktualisiert um 19:01:15 Uhr
Goto Top
Hallo Horst,
z.B. mit PHP so
// Ausgabe z.B.  :
// demodatei.txt wurde zuletzt modifiziert am 03.03.2014 17:55:50.

$filename = 'demodatei.txt';  
if (file_exists($filename)) {
    echo "$filename wurde zuletzt modifiziert am " . date("d.m.Y H:i:s", filemtime($filename));  
}
Die Formatierungsanweisungen für date() kannst du hier nachlesen.

Grüße Uwe
horstvogel
horstvogel 03.03.2014 aktualisiert um 19:05:15 Uhr
Goto Top
Danke Uwe,
sorry da habe ich das mal wieder nicht deutlich genug geschrieben. Es läuft auf einen Apache Tomcat, hätte ich eigentlich die gesamte Frage in Java schieben müssen?
Sorry
Horst
colinardo
colinardo 03.03.2014 aktualisiert um 19:34:24 Uhr
Goto Top
Zitat von @horstvogel:
Danke Uwe,
sorry da habe ich das mal wieder nicht deutlich genug geschrieben. Es läuft auf einen Apache Tomcat, hätte ich
eigentlich die gesamte Frage in Java schieben müssen?
ach sorry, das TomCat hatte ich glatt überlesen face-smile, schieb's am besten in den Java-Bereich, da ist es besser aufgehoben...
colinardo
Lösung colinardo 03.03.2014 aktualisiert um 22:18:12 Uhr
Goto Top
Also wie in TomCat das Servlet aussehen muss weiß ich gerade nicht, aber mit dem folgenden Java-Code kannst du das Änderungsdatum einer Datei erfahren und ausgeben:
import java.io.File;
import java.text.SimpleDateFormat;

File f = new File("C:/temp/deinedatei.txt");  
SimpleDateFormat df = new SimpleDateFormat("dd.MM.yyyy HH:mm:ss");  
String filedate = df.format(f.lastModified());
System.out.println("Die Datei " + f.getName() + " wurde zuletzt geändert am " + filedate);  
vielleicht hilft dir das schon weiter...

Grüße Uwe
horstvogel
horstvogel 03.03.2014 um 22:17:37 Uhr
Goto Top
Hallo Uwe,
Danke schon mal. Sorry für meine Null Ahnung.

Wenn ich folgendes in meine Html Seite eingebe wird, die das Datum und Uhrzeit der html Seite ausgeben. Somit weiß ich jetzt das lastModified überhaupt funktioniert. -face-smile. Das ist ja schon mal was. So nun muss ich mit Deiner Hilfe nur noch lastModified beibringen, das es anstelle des Datum der selbst ausgeführten HTML Seite halt nach irgendeiner Datei auf der Festplatte schaut. Wie?Wo muss ich Deinen Code in einer blanken HTML Datei packen, damit ich das alleine schon auf meinen Rechner testen könnte? Oder darf ich das überhaupt nicht in die HTML Datei packen? Sonst hätte ja jeder die Möglichkeit (die ganze Welt) diesen Dateinamen zu lesen.
Danke für Deine Hilfe, ich sollte vielleicht erst mal beim kleinen 1 mal 1 anfangen. Und da dachte ich, das ist einfache eine kleine Sache....
Ich gehe mal lieber schlafen.


<script type="text/javascript">
document.write("letztes Update: " + document.lastModified);
</script>
colinardo
Lösung colinardo 04.03.2014 aktualisiert um 21:41:44 Uhr
Goto Top
Ähm, du scheinst da was misszuverstehen, das da oben ist Java und kein JavaScript ! Dein JavaScript läuft auf Clientseite und hat dadurch keinen Zugriff auf das Filesystem des Servers, dazu ist ServerSide Scripting z.B. durch eine Java Servlet Page des Tomcat nötig. Siehe dazu:
http://www.vogella.com/tutorials/EclipseWTP/article.html#jspservlets_vi ...

So eine JSP Seite könnte dann so aussehen:
<%@ page language="java" import="java.io.File,java.text.SimpleDateFormat" contentType="text/html; charset=ISO-8859-1"  
    pageEncoding="ISO-8859-1"%>  
<!DOCTYPE html>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">  
<title>JSP Demo</title>
</head>
<body>
<%
File f = new File("C:/temp/deinedatei.txt");  
SimpleDateFormat df = new SimpleDateFormat("dd.MM.yyyy HH:mm:ss");  
String filedate = df.format(f.lastModified());
%>

<h3>Letzte Modifikation der Datei <%= f.getName() %> am <%= filedate %></h1>
</body>
</html> 
In Zeile 11 noch der Pfad zur Datei angepasst (Achtung Slashes anstatt Backslashes verwenden!), das ganze dann als *.jsp Datei auf dem Server abgelegt und mit dem Browser angesteuert.

Grüße Uwe
horstvogel
horstvogel 04.03.2014 um 21:44:51 Uhr
Goto Top
Hallo Uwe,
klasse das hat so geklappt.
Musste meine index.Html dann noch in index.jsp umbenennen, Deinen Code in einer extra date.jsp gepackt und dann nur noch die date.jsp über
http://www.torsten-horn.de/techdocs/jsp-grundlagen.htm <jsp:include page="date.jsp"/> an der richtigen Stelle im der index.jsp eingebunden.

Danke, Danke, Danke!!!
der Horst