Denne side indeholder artikler med forskellige perspektiver på Identity & Access Management i private og offentlige organisationer. Artiklerne behandler aktuelle IAM-emner og leveres af producenter, rådgivere og implementeringspartnere.
jeg har set java.io.file, men mangler stadig, (fordi jeg er et fjols), ideen til hvordan jeg får lavet en visning af filnavnene i en liste eller noget.. kan du ikke gi' et mini eksempel please.....;-)
Her er et eksempel på hvor filsystemet vises i en JFrame hvor der ligger en JEditorPane der viser html tekst. Du kan klikke på hyperlinks og bevæge dig rundt i filsystemet. Det er let at tilføje yderligere information om hver fil, såsom dens læsbarhed og andet. import javax.swing.*; import javax.swing.event.*; import java.io.*; import java.util.*;
public class FileSystem implements HyperlinkListener { private JFrame frame; private JEditorPane pane; public FileSystem( String name ) { pane = new JEditorPane(); pane.setEditable( false ); pane.setContentType( "text/html" ); pane.setText( createTable( name ) ); pane.setCaretPosition( 0 ); pane.addHyperlinkListener( this ); JScrollPane scrollPane = new JScrollPane( pane ); frame = new JFrame( "FileSystem" ); frame.getContentPane().add( scrollPane ); frame.setSize( 500, 500 ); frame.show(); } private String createTable( String name ) { File dir = new File( name ); StringBuffer buffer = new StringBuffer(); String[] files = dir.list(); List list = Arrays.asList( files ); Collections.sort( list ); files = (String[])list.toArray( new String[ 0 ] ); try { buffer.append( "<b>" + dir.getCanonicalPath() + "</b><br>" ); } catch ( IOException ioe ) { buffer.append( "<b>" + dir + "</b><br>" ); } String parent = dir.getParent(); if ( ( parent != null ) && ( parent.length() > 0 ) ) { buffer.append( "<a href=\"" + parent + "\">Parent directory</a><br>" ); } buffer.append( "<table border='2' width=400>" ); buffer.append( "<tr>" ); buffer.append( "<td><b>File name</b></td><td><b>Size</b></td>" ); buffer.append( "</tr>" ); for (int i = 0; i < files.length; i++) { File file = new File( dir, files[ i ] ); if ( file.isDirectory() ) { buffer.append( "<tr><td><a href=\"" + file + "\">" + files[i] + "</a></td><td>0</td></tr>" ); } else { buffer.append( "<tr><td>" + files[ i ] + "</td><td>" + file.length() + "</td></tr>" ); } } buffer.append( "</table>" ); return buffer.toString(); } public void hyperlinkUpdate( HyperlinkEvent he ) { if ( he.getEventType() == HyperlinkEvent.EventType.ACTIVATED ) { pane.setText( createTable( he.getDescription() ) ); pane.setCaretPosition( 0 ); } } public static void main( String[] args ) { new FileSystem( args[ 0 ] ); } }
Programmet forventer at du giver en path som argument: Kompiler med javac FileSystem.java og kør det med java -cp . FileSystem c:\some\path eller java -cp . FileSystem /home/user/some/path alt efter om du bruger windows eller unix.
Nu er jeg ikke windows haj så jeg må gætte. Måske er et drev et filsystem modsat på unix hvor / er en del af filsystemet. Så måske kan man kun se et drev ad gangen?
Hvad nu, carsten, hvis jeg vil kompilerer den i UltraEdit? (Jeg kan godt se sp. er lukket)
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.