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-Key: 231534

Url: https://administrator.de/contentid/231534

Printed on: April 18, 2024 at 07:04 o'clock

Member: colinardo
colinardo Mar 03, 2014 updated at 18:01:15 (UTC)
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
Member: horstvogel
horstvogel Mar 03, 2014 updated at 18:05:15 (UTC)
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
Member: colinardo
colinardo Mar 03, 2014 updated at 18:34:24 (UTC)
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...
Member: colinardo
Solution colinardo Mar 03, 2014 updated at 21:18:12 (UTC)
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
Member: horstvogel
horstvogel Mar 03, 2014 at 21:17:37 (UTC)
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>
Member: colinardo
Solution colinardo Mar 03, 2014, updated at Mar 04, 2014 at 20:41:44 (UTC)
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
Member: horstvogel
horstvogel Mar 04, 2014 at 20:44:51 (UTC)
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