24. februar 2002 - 16:14Der er
3 kommentarer og 1 løsning
gennemløb af filmappe samt finde filnavne på de givne filer
Jeg skal bruge lidt hjælp til hvordan at jeg gennemløber et directory i Java. Under gennemløbet skal programmet detectere hvilke filnavne der er i directory'et og gemme disse.
da det dybest set er 2 spørgsmål er der lidt ekstra point at hente, i forhold til at det er et typisk API spørgsmål....
I dette særtema ser vi på, hvordan cloud og AI bliver fundamentet for virksomhedernes digitale forretning, og hvordan de nye muligheder for automatisering og forretningsværdi kan udnyttes uden at miste overblik, sikkerhed og menneskelig kontrol.
Det følgende program har jeg lavet til at indsætte en tekststreng i alle filer i et directory. Alle underdirectories kommer med.
import java.io.*; import java.util.*; public class InsertTing {
public static int space = -1;
public static boolean isJSP(String file) { String extension = file.substring(file.length() - 3); extension = extension.toLowerCase(); boolean result; if (extension.equals("jsp")) result = true; else result = false; return result; }
public static void insert(String path) { space += 4; String stringSpace = ""; for(int t = 0; t < space; t++) stringSpace += " "; File filePath = new File(path); File[] fileList = filePath.listFiles(); if (fileList != null) { for(int i = 0; i < fileList.length; i++) { if (fileList[i].isDirectory()) { System.out.println(stringSpace + "Directory: " + fileList[i].getName()); insert(fileList[i].getAbsolutePath()); } else { if (isJSP(fileList[i].getName())) { System.out.println(stringSpace + "JSP found: " + fileList[i].getName()); insertHeader(fileList[i].getAbsolutePath()); } } } } space -= 4; }
public static void insertHeader(String file) { try { File filename = new File(file); BufferedReader in = new BufferedReader(new FileReader(file)); ArrayList a = new ArrayList(); while (in.ready()) { a.add(in.readLine()); } in.close(); filename.delete();
PrintWriter out = new PrintWriter(new BufferedWriter(new FileWriter(filename))); out.println("<%@ include file=\"/include/checkLoginStatusForJsp.jsp\" %>"); for(int i = 0; i < a.size(); i++) { out.println(((String)a.get(i)));
Måske er det på sin plads at udspecificere lidt af det essentielle:
Lav en fil ud fra en path (som er en String). En File har en metode, der hedder listFiles(), som returnerer et array med alle Files i det directory. Det kan du gennemløbe...
File filePath = new File(path); File[] fileList = filePath.listFiles();
Hvis du får problemer når du skal bruge det, så bare sig til :-)
Synes godt om
Ny brugerNybegynder
Din løsning...
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.