Array of files

Hi!
I'm creating simple image viewer and i'd like to add 2 buttons (got biiig problems with that too so now i'm trying with keyboard:) for moving to next or previous image in directory, starting from the image which is actually loaded.
How to do that?

Thanks for answering.
What do you mean by "data model"? I'm really new to java...
All loading, saving and displaying images already works.
I've found listFiles function and i'm using it with a image file filter like this
File[] files = file.listFiles((FileFilter)filter);
but how to is this list created? Is the loaded file the first one in this array or is it created alphabetically? The more complicated my application is the less my debugger works :) so i can't check it by myself. Do i have to search the array for my file, store its index and then use it to move back and forward? If yes, how to search array of files for specific file?

Similar Messages

  • Writing data from array to file

    May i know how to write string from a array into a file.
    I have use string tokenizer to extract every line from a file using readline and use stringtokenizer to spilt the line using tab delimiter for processing.
    But if i want to write data from array to file with tab as a delimiter and how to go to the next line. How do i do that. Below is the task and i have state a simple example on a array i have and the file output that i want.
    Pls advice.. Thanks
    eg of a array
    array[0] = Data
    array[1] = One
    array[2] = Data
    array[3] = Two
    array[4] = Final
    array[5] = Data
    From the above array, i want to write to a file so that it will appear something as below
    Eg textfile.txt
    Data One
    Data Two
    Final Data
    PLs attached a simple code as a example as i am only begining to start useing the IO feature in java. Thanks

    Really thanks for your help,
    but u are mentioning that i have already know the number of countters in advance , that is to say the 2 * counters.
    But is there a way to solve this problem which i mean if i dun know the number of predefined counters. Maybe i should say, there is more than 2 counters and in another situation, the counters will only be defined during runtime. Actually the solution u give will work nicely with 2 counters. but wat if the counter is more than 4, i wll have to concatenate the string a lot of time. so is there any solution around this problem. That why i am wandering if tere is any solution to write to the file when the counters can be only determined in runtime
    Pls advice on the above with a code samples if possible.

  • 3D string array to file

    How can I write a 3D string array to file?

    sascha:
    You could do this a lot of different ways.
    The first and most obvious thing that comes to my mind is that you can
    think about a 3D array as an array of 2D arrays. (For that matter a
    2D array is an array of 1D arrays.)
    Thus you could use a for loop to index your 3D array down to 2D and
    then perform multiple writes to write each 2D array "element" of this
    array of 2D arrays to disk. You would probably want to write some
    sort of header which defines how many dimensions there are in the
    array so that whatever reads it back later will have an easier time
    reading it back. (Otherwise you'd have to implement EOF handling for
    the read back portion.)
    To read it back you just use the same logic but build a 3D array using
    a 2D read inside a for loop.
    Dou
    glas De Clue
    LabVIEW developer (looking for a job...
    [email protected]
    [email protected] (SaschaS) wrote in message news:...
    > How can I write a 3D string array to file?

  • Create Class objects from an Array of File Objects

    Hi There,
    I'm having extreme difficulty in trying to convert an array of file objects to Class objects. My problem is as follows: I'm using Jfilechooser to select a directory and get an array of files of which are all .class files. I want to create Class objects from these .class files. Therefore, i can extract all the constructor, method and field information. I eventually want this class information to display in a JTree. Very similar to the explorer used in Netbeans. I've already created some code below, but it seems to be throwing a NoSuchMethodError exception. Can anyone please help??
    Thanks in advance,
    Vikash
    /* the following is the class im using */
    class FileClassLoader extends ClassLoader {
    private File file;
    public FileClassLoader (File ff) {
    this.file = ff;
    protected synchronized Class loadClass() throws ClassNotFoundException {
    Class c = null;
    try {
    // Get size of class file
    int size = (int)file.length();
    // Reserve space to read
    byte buff[] = new byte[size];
    // Get stream to read from
    FileInputStream fis = new FileInputStream(file);
    DataInputStream dis = new DataInputStream (fis);
    // Read in data
    dis.readFully (buff);
    // close stream
    dis.close();
    // get class name and remove ".class"
    String classname = null;
    String filename = file.getName();
    int i = filename.lastIndexOf('.');
    if(i>0 && i<filename.length()-1) {
    classname = filename.substring(0,i);
    // create class object from bytes
    c = defineClass (classname, buff, 0, buff.length);
    resolveClass (c);
    } catch (java.io.IOException e) {
    e.printStackTrace();
    return c;
    } // end of method loadClass
    } // end of class FileClassLoader
    /* The above class is used in the following button action in my gui */
    /* At the moment im trying to output the data to standard output */
    private void SelectPackage_but2ActionPerformed(java.awt.event.ActionEvent evt) {
    final JFileChooser f = new JFileChooser();
    f.setFileSelectionMode(JFileChooser.DIRECTORIES_ONLY);
    int rVal = f.showOpenDialog(Remedy.this);
    // selects directory
    File dir = f.getSelectedFile();
    // gets a list of files within the directory
    File[] allfiles = dir.listFiles();
    // for loop to filter out all the .class files
    for (int k=0; k < allfiles.length; k++) {
    if (allfiles[k].getName().endsWith(".class")) {
    try {
    System.out.println("File name: " + allfiles[k].getName()); // used for debugging
    FileClassLoader loader = new FileClassLoader(allfiles[k]);
    Class cl = loader.loadClass();
    //Class cl = null;
    Class[] interfaces = cl.getInterfaces();
    java.lang.reflect.Method[] methods = cl.getDeclaredMethods();
    java.lang.reflect.Field[] fields = cl.getDeclaredFields();
    System.out.println("Class Name: " + cl.getName());
    //print out methods
    for (int m=0; m < methods.length; m++) {
    System.out.println("Method: " + methods[m].getName());
    // print out fields
    for (int fld=0; fld < fields.length; fld++) {
    System.out.println("Field: " + fields[fld].getName());
    } catch (Exception e) {
    e.printStackTrace();
    } // end of if loop
    } // end of for loop
    packageName2.setText(dir.getPath());
    }

    It's throwing the exeption on the line:
    FileClassLoader loader = new FileClassLoader(allfiles[k]);
    I'm sure its something to do with the extended class i've created. but i cant seem to figure it out..
    Thanks if you can figure it out

  • How to add array of file types to file dialog box

    Hi
    I just want to know how to add array of file types in file dialog box vi. I know that multiple file type can be added to filedialog vi in the pattern Input string separated by semicolon (eg *.vi;*.doc;*.jpeg;*.xls). But i want file dialog which is shown in the below picture.
    I think that file dialog vi call user32.dll but i don't have that header file to call that dll.
    Waiting for your esteemed response.
    Thanks & Regards
    Samuel J
    System Engineer
    Captronic Systems Pvt Ltd
    Bangalore, India.

    I'm not sure how (or even if) it can be achieved using the LabVIEW built-in open dialog, but a .NET call to openfiledialog (http://msdn.microsoft.com/en-us/library/system.windows.forms.openfiledialog.aspx) can do what you're looking for. The .NET functions are better documentented that simple user.dll calls, so it might be easier to implement.
    Shaun

  • Fill array with file names

    What am I missing?  I've got alerts that should pop up if it works and if it fails but instead it does nothing, I'm sure its possible to create an array that is made up of all the file names of a folder.  In the past I've had to enter all the values one a time and some of these folders have 200+ files in it.
    #target illustrator
    filltotesTempArr
    function filltotesTempArr()
    var toteTemparray = new Array(toteTemps)
    var toteTempPath = Folder ("S:/Illustrator JS Palette/Direct Template Calls/Totes");
    var allFiles = artPath.getFiles(order);
    var toteTemps
    if (allFiles.length > 0)
        for (i=0;i<allFiles.length;i++)
                toteTemps = toteTemps + app.open(allFiles[i] )
              }//end for
          alert("Your array has the current values:" + toteTemps);
        }//end if
        else
        alert("Script to fill Totes Templates Array has failed");

    I need to take all the files inside of a folder, and put their file names in an array like this;
    var totesarr1= new Array ("A165331","A165332","A165333","A165334","A165337","A165338","A165344","A165348", "A165349",
    "A165352","A165353","A203","A210","A211","A214","A222","A229","A231","A232","A234","A248","A250","A252","A268",
    "A271","A272","A278","A290","A292","A322","A323","A324","A325","A327","A330","A402","A404","A405","A407","A408",
    "A409","A410","A411","A414","A415","A417","A420","A422","A423","A424","A425","A427","A430","A436","A438","A439",
    "A440","A441","A443","A446","A448","A449","A450","A451","A452","A454","A455","A456","A460","A461","A468","A470",
    "A490","A495","A497","A500","A508","A509","A510","A512","A513","A514","A518","A524","A525","A526","A527","A530",
    "A533","A534","A536","A543","A581","A582","A587","A602","A619","A624","A705","A707","A710","A714","A715","A739",
    "A740","A741","A742","A743","A744","A745","A748","A750","A751","A752","A753","A754","A755","A756","A763","A800",
    "A801","A804","A806","A811","A815","A817","A818","A819","A824","A832","A835","A836","A838","A841","A844","A848",
    "A849","A852","A854","A856","A857","A859","A861","A863","A865","A866","A868","A871","A873","A877","A879","A881",
    "A885","A888","A890","A894","A899","A900","A902","A904","A940","A941","A943","A944","A945","A948","A97307","A97309",
    "A97313","A97314","A97315","A97316","A97321","A97326","A97340","A97342","A97708","A97715","F742","F751","V6432");
    so the closest thing that I can come up with is this;
    #target illustrator
    filltotesTempArr
    function filltotesTempArr()
    var toteTemparray = new Array(toteTemps)
    var order = new RegExp(input);
    var toteTempPath = Folder ("S:/Illustrator JS Palette/Direct Template Calls/Totes");
    var totetempnames = toteTempPath.getFiles();
    var totetemps = new Array ()
    var allFiles = toteTempPath.getFiles();
    if (allFiles.length > 0)
        for (i=0;i<allFiles.length;i++)
                toteTemps = toteTemps + "," + app.open(allFiles[i])
              }//end for
          alert("Your array has the current values:" + toteTemps);
        }//end if
        else
        alert("Script to fill Totes Templates Array has failed");
    alert ("Script is Done")
    but even this dosn't work like it should
    #target Illustrator
    GetTempNames;
    function GetTempNames ()
    var toteTempPath = Folder ("S:/Illustrator JS Palette/Direct Template Calls/Totes");
    var toteTempNames = toteTempPath.getFiles()
    var totetemparr = new Array ( toteTempNames )
    alert ("script is done get ready");
        alert ("Here " + totetemparr);
    so now I'm at a loss

  • Array out of bounds exception when outputting array to file

    Could someone please tell me why i'm getting this array out of bounds exception?
    public class Assignment1 {
    public static void main(String[] names)throws IOException {
    BufferedReader keyboard = null;
    String userChoice;
    String inputFile = null;
    String studentData;
    String searchFile = null;
    String searchName;
    String stringIn;
    PrintWriter outputFile;
    FileWriter fWriter = null;
    BufferedReader fReader = null;
    int first;
    int last;
    int mid;
    int midValue;
    int i;
    int number;
    // creates keyboard as a buffered input stream
    keyboard = new BufferedReader(new InputStreamReader(System.in));
    //prompts user to choose 1 or 2 to make a corresponding choice
    System.out.println("Please Enter: ");
    System.out.println("1 to Create a File: ");
    System.out.println("2 to Search a File: ");
    userChoice = keyboard.readLine(); //user enters 1 or 2
    // converts a String into an int value
    number = Integer.parseInt(userChoice);
    fReader = new BufferedReader(new FileReader("studentData.txt"));
    if (number == 1) {          
    System.out.println("Please Enter the File Name to Create: ");
    studentData = keyboard.readLine();
    File file = new File("studentData.txt");
    fWriter = new FileWriter("studentData.txt");
    outputFile = new PrintWriter(fWriter);
    names = new String[200];
    i=0;
    //keep looping till sentinel
    while (studentData != "end" && studentData != null &&
    i < names.length) {
    if (studentData.equals("end")) break; //break and call sort
    System.out.println("Enter a name and press Enter. " +
    "Type 'end' and press Enter when done: ");
    studentData = keyboard.readLine();
    //loop for putting the names into the array
    for(i=0; i<names.length; i++) ;
    outputFile.println(names);
    } [b]outputFile.close();

    package assignment1;
    import java.io.*;
    import java.util.*;
    public class Assignment1 {
        public static void main(String[] names)throws IOException {
           BufferedReader keyboard = null;
           String userChoice;
           String inputFile = null;
           String studentData;
           String searchFile = null;
           String searchName;
           String stringIn;
           PrintWriter outputFile;
           FileWriter fWriter = null;
           BufferedReader fReader = null;
           int first;
           int last;
           int mid;
           int midValue;
           int i;
           int number;
           // creates keyboard as a buffered input stream
           keyboard = new BufferedReader(new InputStreamReader(System.in));
           //prompts user to choose 1 or 2 to make a corresponding choice
           System.out.println("Please Enter: ");
           System.out.println("1 to Create a File: ");
           System.out.println("2 to Search a File: ");
           userChoice = keyboard.readLine();    //user enters 1 or 2
           // converts a String into an int value
           number = Integer.parseInt(userChoice); 
           fReader = new BufferedReader(new FileReader("studentData.txt"));
           if (number == 1) {          
               System.out.println("Please Enter the File Name to Create: ");
               studentData = keyboard.readLine();
               File file = new File("studentData.txt");
               fWriter = new FileWriter("studentData.txt");
               outputFile = new PrintWriter(fWriter);
               names = new String[200];
               i=0;
                //keep looping till sentinel
                while (studentData.equals("end") && studentData != null &&
                       i < names.length) {
                   if (studentData.equals("end")) break;   //break and call sort
                   System.out.println("Enter a name and press Enter. " +
                                       "Type 'end' and press Enter when done: ");
                    studentData = keyboard.readLine();
                    //loop for putting the names into the array
                    for(i=0; i<names.length; i++) ;
                    outputFile.println(names);
    } outputFile.close();
    //call selectionSort() to order the array
         selectionSort(names);
         // Now output to a file.
    fWriter = new FileWriter("studentData.txt");
    outputFile = new PrintWriter(fWriter);
    } else if (number == 2) {
    System.out.println("Please Enter a File Name to search: ");
    searchFile = keyboard.readLine();
    inputFile = ("studentData.txt");
    } if (searchFile == "studentData.txt") {                      
    // Input from a file. See input file streams.
    fReader = new BufferedReader(new FileReader("studentData.txt"));
    System.out.println("Please enter a Name to search for: ");
    searchName = keyboard.readLine();
    //enter binary search code
    first = 0;
    last = 199;
    while (first < last)
    mid = (first + last)/2; // Compute mid point.
    if (searchName.compareTo(names[mid]) < 0) {
    last = mid; // repeat search in bottom half.
    } else if (searchName.compareTo(names[mid]) > 0) {
    first = mid + 1; // Repeat search in top half.
    } else {
    // Found it.
    System.out.println("The Name IS in the file.");
    } // did not find it.
    System.out.println("The Name IS NOT in the file.");
    } else //if userChoice != 1 or 2, re-prompt then start over
    System.out.println("Please Enter 1 or 2 or correctly " +
    "enter an existing file!!");
    // fWriter = new FileWriter("studentdata.txt");
    //outputFile = new PrintWriter(fWriter); //output
    public static void selectionSort(String[] names) {
    //use compareTo!!!!
    int smallIndex;
    int pass, j = 1, n = names.length;
    String temp;
    for (pass = 0; pass < n-1; pass++)
    //Code for Do/While Loop
    do {
    //scan the sublist starting at index pass
    smallIndex = pass;
    //jtraverses sublist names[pass+1] to names[n-1]
    for (j = pass+1; j < n; j++)
    //if smaller string found, smallIndex=that position
    if (names[j].compareTo(names[smallIndex]) < 0)
    smallIndex = j;
    temp = names[pass]; //swap
    names[pass] =names[smallIndex];
    names[smallIndex] = temp;
    } while (j <= names.length);
    //File file = new File("studentData.txt");
    This is the output window:
    init:
    deps-jar:
    compile:
    run:
    Please Enter:
    1 to Create a File:
    2 to Search a File:
    1
    Please Enter the File Name to Create:
    test
    Exception in thread "main" java.lang.NullPointerException
    at assignment1.Assignment1.selectionSort(Assignment1.java:134)
    at assignment1.Assignment1.main(Assignment1.java:73)
    Java Result: 1
    BUILD SUCCESSFUL (total time: 9 seconds)

  • Array of file variables

    I wanted to have an array of variables of type Text_IO.File_Type.
    So I declared:
    TYPE file_array IS VARRAY(20) of Text_IO.File_Type;
    f_array file_array;
    begin
         f_array(1) := Text_IO.Fopen('c:\file', 'w');
    This compiled but didn't work, the Fopen fails, all other Fopen's that are not with array variables worked.
    Any idea why?
    Thanks.
    --Bassem                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       

    Your syntax is slightly wrong you must initialise and extend the array:
    declare
      TYPE file_array IS VARRAY(20) of Text_IO.File_Type;
      f_array file_array := file_array();
    begin
      f_array.extend;
      f_array(1) := Text_IO.Fopen('c:\file', 'w'); It will then work.

  • Displaying byte array PDF file in Portal

    Hi,
    i need to display a PDF file. The PDF is stored in a byte array. This works fine when i run my code (see below) from the .jpf via the debugger/browser, but when i use it as a portlet, in the portal, it does not work ?
    Any help is much appreciated.
    Thanks
    Mark
    byte[] pdfDocument = docStore.getPDF();
    ServletOutputStream outPdf = response.getOutputStream();
    response.setContentType("application/pdf");
    outPdf.write(pdfDocument);
    outPdf.flush();
    outPdf.close();

    Mark,
    Note that the portal sets the content type (e.g, text/html) and encoding
    as the portal page starts rendering. In your case, the
    setContentType() would be useless since the servlet container won't let
    you change it. You can either use a popup browser window for the pdf as
    Kunal suggested, or use an iframe if you want to render the pdf inside
    the portlet window.
    Subbu
    Mark Gilleece wrote:
    Hi,
    i need to display a PDF file. The PDF is stored in a byte array. This works fine when i run my code (see below) from the .jpf via the debugger/browser, but when i use it as a portlet, in the portal, it does not work ?
    Any help is much appreciated.
    Thanks
    Mark
    byte[] pdfDocument = docStore.getPDF();
    ServletOutputStream outPdf = response.getOutputStream();
    response.setContentType("application/pdf");
    outPdf.write(pdfDocument);
    outPdf.flush();
    outPdf.close();

  • Write array to file

        Hi,
    i am trying to write an array coming out of a for loop into a file. If i plot the array in the Front panel everything works, but if i write it to a text file some aditional characters (empty space and this rectangle) appear.
    The file should look like the text file but without spaces before first number of row and rectangle.
    Attached are .txt and screenshot of blockdiagramm
    Thanks for any help
    Philipp
    Attachments:
    bd.jpg ‏98 KB
    summary.txt ‏1 KB

    First of all: Thanks.
    Your solution did exactely what i want, and i am fine with using a non-elegant version, if it works.
    About that autoindexing + indexing the path:
    I know this is stupid, and i changed it to not  autoindexing. But these things happen, when you try to quickly expand an already existing vi and want to automatize with for loops instead of doing the same things over and over.
    I am attaching the whole vi. it first was just the analysis, basically the inner loop, where i wanted to be able to vary the number and size of the parts of the waveform that go into the PSD to see how analysis time and numbers of averages effects the spectrum.
    In the next step i created a vi that writes a string of two variables in a file, and then i wanted to do this for all files in a directory.
    i am totally aware of the fact, that there are several dirty solutions. But i guess you are used to seeing these things, that could be done much more elegantely and efficiently, but if you try to get a quick solution that works for you and you learned Labview by trial and error, this is the way your vi´s look like.
    By the way, what would you suggest to learn "clean" labVIEW programming ?
    thanks again,
    Philipp
    Attachments:
    acc_analysis+summary+loop.vi ‏182 KB

  • How to filter array of file-names?

    Hi everybody,
    I'm trying to populate a list with files of a specific file type and then import the selection from my list into my current AE project. I've got a folder with many subfolders. So far I only managed to check through all the folders by using David Tornos solution form here:
    Working with system folders and files
    Now I have an array with all files in the subfolders. How can I filter that array to only show files with specific filename extensions, e.g. .jpg?
    The folderObj.getFiles function has a convenient mask with which this is possible. Is there anything similar for an array?
    Regards, Michael

    You can check that the file is a jpeg exactly as my previous post, using a regexp.
    The code below should work (i didnt test it):
    function scoutFolder(folder, f, recursive){
        // executes the function f (handler) on every file of "folder" and if recursive evaluates to true, recurses through subfolders until bottom is reached
        var files=folder.getFiles();
        var n, N=files.length;
        for (n=0; n<N; n++){
            f(files[n]);
            if (recursive && files[n] instanceof Folder) scoutFolder(files[n], f, recursive);
        return;
    var myFolder = Folder(/*your input*/);
    var recursive = true;
    var jpgImages = [];
    var reg = /\.(jpeg|jpg)$/;
    scoutFolder(myFolder, function(file){if (reg.test(file)) jpgImages.push(file);}, recursive);
    // at this stage, the "jpgImages" array should contain all jpg files in the folder
    Xavier.

  • Element in array to file

    Hi!
    I'm trying to get the elements in a array and put them into a file. How do I do that?
    This is an example of how it looks:
    Thearray: [a,1,b,2,c,3]
    Thefile:
    a
    1
    b
    2
    c
    3
    As you can see, each element should be on its own line in the file.

    Here you have a way of doing it:
    public static void main (String args[])
              String[] array_to = new String[5];
              array_to[0] = "a";
              array_to[1] = "b";
              array_to[2] = "c";
              array_to[3] = "d";
              array_to[4] = "e";
              try
                   FileWriter fw = new FileWriter("file.txt");
                   BufferedWriter bw = new BufferedWriter(fw);
                   PrintWriter salida = new PrintWriter(bw);
                   salida.println("" + array_to[0]);
                   salida.println("" + array_to[1]);
                   salida.println("" + array_to[2]);
                   salida.println("" + array_to[3]);
                   salida.println("" + array_to[4]);
                   bw = new BufferedWriter(new FileWriter("fichero.txt", true));
                   salida.close();
              catch(java.io.IOException ioex)
         }

  • How to put a title row in the recorded 2D array excel file?

    I am getting 2D array from labview. This file is saved to Excel File. However, I am trying to put a title row such as A, B, C, D (A is for 1st column, B is for 2nd column, C is for 3rd column and D is for 4th column) My recorded 2D data should start form the 2nd row. This data has also 4 columns which need to be aligned with the title row. Do you have any idea how I can perform this operation?

    You still need to add tabs and an EOL.
    'Convert EOL' does not insert an EOL.
    See screenshot for a couple of basic ways.
    =====================================================
    Fading out. " ... J. Arthur Rank on gong."
    Attachments:
    Header_shot.gif ‏4 KB

  • Save byte[] array to file

    Hi,
    I've read a .jpg picture off the hard disk and stored in a byte[] array. I've altered some of the bytes and want to save the file back to .jpg. Is there a method available in java which allows me to do this?
    Thanks and regards,
    Krt_Malta

    FileOutputStream#write(byte[] array).

  • Array of File[] objects

    This may be a silly question, but I'm trying to obtain the length of an array of type File[]. The .length() method doesn't seem to work. Can someone please tell me how I can go about determining the length of my File[] array?
    Thanks.

    Hi,
    File [] is an array. So u can get it by using its length public member.
    So check out this code snippet.
    File []listOfFiles = .....;
    int len = listOfFiles.length;
    I think u can now do whatever u want with this

Maybe you are looking for

  • How to append date in YYYYMMDD format in .par file for export

    Hi, Database Version: 10.2.0.4 OS: AIX I have an export script which reads .par file and executes "exp" to export schema. I would like to add date in "YYYYMMDD" format for the dump file like this owner=scott file=/exports/scott_${`date '+%Y%m%d'`}.dm

  • Replacement iPod mini issues

    My iPod mini froze, so I took it to Best Buy and they replaced it with a new one. They just switched the iPod's so I didn't get the ID for it, that means I can't register it. When I plug it into my computer, it says I need to run the iPod update. I d

  • Recording to external disk?

    Do most of you do this instead of recording to your system disk? If so, why?

  • Custom measure to calculate average in YTD model

    Hi, I am working in a YTD model which currently has the standard measures: YTD, QTD and periodic. I now need a new custome measure to calculate the average of the YTD values. So, if on an account I have the following YTD amounts: month 1: 10 month 2:

  • Can no longer rename folders in Launchpad

    When I first installed Lion, I could rename folders I made in Launchpad just fine.  Since updating to 10.7.1 I can no longer rename folders.  Is anyone else having this problem?