You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@commons.apache.org by "Gary Gregory (JIRA)" <ji...@apache.org> on 2017/11/16 04:31:00 UTC

[jira] [Commented] (IO-555) Add a FileSystem enum to provide legal file names

    [ https://issues.apache.org/jira/browse/IO-555?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16254738#comment-16254738 ] 

Gary Gregory commented on IO-555:
---------------------------------

Hi All,

Thank you all for your feedback.

I renamed this ticket from "Add org.apache.commons.io.FilenameUtils.isIllegalWindowsFileName(char)" to "Add a FileSystem enum to provide legal file names" and committed the new enum {{FileSystem}}. 

I'd like to have the first use case (as Javadoc'd) ironed out before adding new features/methods.

I am particularly interesting in the "null char removes illegal character" behavior [~sebb@apache.org] mentioned.

Have at it, here, or in git master :-)

Gary

> Add a FileSystem enum to provide legal file names
> -------------------------------------------------
>
>                 Key: IO-555
>                 URL: https://issues.apache.org/jira/browse/IO-555
>             Project: Commons IO
>          Issue Type: Improvement
>            Reporter: Gary Gregory
>            Assignee: Gary Gregory
>             Fix For: 2.7
>
>
> Add {{org.apache.commons.io.FilenameUtils.isIllegalWindowsFileName(char)}}.
> {code:java}
>     /**
>      * Checks whether the given character is illegal in a Windows file names.
>      * <p>
>      * The illegal character are:
>      * </p>
>      * <ul>
>      * <li>< (less than</li>
>      * <li>> (greater than</li>
>      * <li>: (colon</li>
>      * <li>" (double quote</li>
>      * <li>/ (forward slash</li>
>      * <li>\ (backslash</li>
>      * <li>| (vertical bar or pipe</li>
>      * <li>? (question mark</li>
>      * <li>* (asterisk</li>
>      * <li>ASCII NUL (0)</li>
>      * <li>Integer characters 1 through 31</li>
>      * <li>There may be other characters that the file name does not allow. Please see
>      * <a href="https://msdn.microsoft.com/en-us/library/windows/desktop/aa365247(v=vs.85).aspx">Naming Files, Paths,
>      * and Namespaces</a></li>
>      * </ul>
>      * 
>      * @see <a href="https://msdn.microsoft.com/en-us/library/windows/desktop/aa365247(v=vs.85).aspx">Naming Files,
>      *      Paths, and Namespaces</a>
>      * @param c
>      *            the character to check
>      * @return whether the give character is legal
>      * @since 2.7
>      */
> {code}
> I use this method as a building block to create file names based on Strings from other sources.
> A further contribution could be: {{String toLegalWindowsFileName(String input, char replacementChar)}}



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)