Changed a number of places that used indexOf(".") to extract the file extension inste...
authormccreedy@NIH.GOV <mccreedy@NIH.GOV@ba61647d-9d00-f842-95cd-605cb4296b96>
Wed, 21 Mar 2018 15:38:21 +0000 (15:38 +0000)
committermccreedy@NIH.GOV <mccreedy@NIH.GOV@ba61647d-9d00-f842-95cd-605cb4296b96>
Wed, 21 Mar 2018 15:38:21 +0000 (15:38 +0000)
git-svn-id: https://citdcbmipav.cit.nih.gov/repos-pub/mipav/trunk@15422 ba61647d-9d00-f842-95cd-605cb4296b96

mipav/src/gov/nih/mipav/model/file/FileIO.java

index 3722e2b..683251a 100644 (file)
@@ -3637,8 +3637,8 @@ public class FileIO {
             if (fileType == FileUtility.UNDEFINED) { // if image type not defined by extension, popup\r
                 fileType = getFileType(); // dialog to get user to define image type\r
                 userDefinedFileType = fileType;\r
-                if (fileName.indexOf(".") != -1) {\r
-                    userDefinedSuffix = "." + fileName.split("\\.")[1];\r
+                if (fileName.lastIndexOf(".") != -1) {\r
+                    userDefinedSuffix = "." + fileName.substring(fileName.lastIndexOf(".") + 1);\r
                 }\r
             }\r
 \r
@@ -5656,7 +5656,7 @@ public class FileIO {
                 }\r
 \r
                 if (fName.indexOf(".") != -1) {\r
-                    fName = fName.substring(0, fName.indexOf(".")) + start + fName.substring(fName.indexOf("."), fName.length());\r
+                    fName = fName.substring(0, fName.lastIndexOf(".")) + start + fName.substring(fName.lastIndexOf("."), fName.length());\r
                 } else {\r
                     fName = fName + start;\r
                 }\r
@@ -15248,7 +15248,7 @@ public class FileIO {
         fileDicom.getTagTable().setValue("0002,0000", new Integer(metaInformationGroupLength), 4);\r
 \r
         if (options.isSaveAs()) {\r
-            index = options.getFileName().indexOf(".");\r
+            index = options.getFileName().lastIndexOf(".");\r
             prefix = options.getFileName().substring(0, index); // Used for setting file name\r
             fileSuffix = options.getFileName().substring(index);\r
         }\r
@@ -16270,7 +16270,7 @@ public class FileIO {
         createProgressBar(null, options.getFileName(), FileIO.FILE_WRITE);\r
 \r
         if (options.isSaveAs()) {\r
-            index = options.getFileName().indexOf(".");\r
+            index = options.getFileName().lastIndexOf(".");\r
             prefix = options.getFileName().substring(0, index); // Used for setting file name\r
             fileSuffix = options.getFileName().substring(index);\r
 \r
@@ -16824,7 +16824,7 @@ public class FileIO {
      * @return Flag indicating that this was a successful write.\r
      */\r
     private boolean writeJimi(final ModelImage image, final FileWriteOptions options) {\r
-        final int index = options.getFileName().indexOf(".");\r
+        final int index = options.getFileName().lastIndexOf(".");\r
         final String prefix = options.getFileName().substring(0, index); // Used for setting file name\r
         final String fileSuffix = options.getFileName().substring(index + 1);\r
         int slice = 0;\r
@@ -16861,7 +16861,43 @@ public class FileIO {
             }\r
         }\r
 \r
-        if (image.getNDims() <= 3) {\r
+        if (image.getNDims() == 2) {\r
+            Image im;\r
+\r
+            ((ViewJFrameImage) (image.getImageFrameVector().firstElement())).getComponentImage().createImg(0);\r
+\r
+            im = ((ViewJFrameImage) (image.getImageFrameVector().firstElement())).getComponentImage().getImage();\r
+\r
+            name = options.getFileDirectory() + prefix + "." + fileSuffix;\r
+\r
+            /*\r
+             * if ( (i < 9) && (endSlice != beginSlice)) { name = options.getFileDirectory() + prefix + "00" + (i +\r
+             * 1) + fileSuffix; } else if ( (i >= 9) && (i < 99) && (endSlice != beginSlice)) { name =\r
+             * options.getFileDirectory() + prefix + "0" + (i + 1) + fileSuffix; } else if (endSlice != beginSlice)\r
+             * { name = options.getFileDirectory() + prefix + (i + 1) + fileSuffix; } else { name =\r
+             * options.getFileDirectory() + prefix + fileSuffix; }\r
+             */\r
+\r
+            try {\r
+                if (useImageIO) {\r
+                    ImageIO.write(getRenderedImage(im), fileSuffix, new File(name));\r
+                } else {\r
+                    Jimi.putImage(im, name);\r
+                }\r
+            } catch (final IOException e) {\r
+                Preferences.debug("ImageIO write error: " + e + "\n", Preferences.DEBUG_FILEIO);\r
+\r
+                e.printStackTrace();\r
+\r
+                return false;\r
+            } catch (final JimiException e) {\r
+                Preferences.debug("Jimi write error: " + e + "\n", Preferences.DEBUG_FILEIO);\r
+\r
+                e.printStackTrace();\r
+\r
+                return false;\r
+            }\r
+        } else if (image.getNDims() == 3) {\r
 \r
             for (int i = beginSlice; i <= endSlice; i++) {\r
 \r