Abstract:
A computer-based method for managing files includes: configuring an access control list which illustrates all the accessible rights to corresponding users, the accessible rights comprise the right for comparing selected files, the right for merging selected files and the right for dividing a selected file; saving created files in a file transfer protocol (FTP) server, and saving file information of the files in a database, the file information including a file path of each of the files; reading from the FTP server selected files that need to be compared according to respective file paths if a files comparing request is received, comparing the selected files, and outputting differences between the selected files; reading from the FTP server selected files that need to be merged according to respective file paths if a files merging request is received, merging the selected files to create a merged file, and saving information of the merged file in the database; reading from the FTP server a selected file that needs to be divided according to a corresponding file path and a file position of the file, if a file dividing request is received, dividing the selected file into two files at the file position, and saving information of two divided files in the database. A related system is also disclosed.

Description:
BACKGROUND OF THE INVENTION 
     1. Field of the Invention 
     The present invention is related to a system and method for managing files. 
     2. Description of Related Art 
     In a traditional way, a file with different versions is manually recorded separately. In this manual method, it takes a long time to look up files with different versions. It would be a hard problem to distinguish the differences between two files with different versions. In order to manage a great deal of files, there is a need to record different versions of the files effectively. 
     At the same time, there is a need to save a previous version of the file after each of the modifications on the file. If the previous version of the file is covered by a new revised version of the file, the previous version of the file will not be found out. So, there is a need to record the previous version of the file effectively before the previous version of the file is modified, the previous version of the file can be found out easily if it has been recorded before it is modified. What&#39;s more, there are needs to improve the efficiency to manage files such as compare the files, merge the files, and divide the files. 
     Therefore, what is needed is a system and method for managing files which can record the versions of the files, compare the files, merge the files, and divide the file efficiently. 
     SUMMARY OF THE INVENTION 
     A system for managing files is provided in accordance with a preferred embodiment. The system includes a computer, a file manager server, a database and a file transfer protocol (FTP) server. The file manager server is connected with the computer, the database and the FTP server. The FTP server is configured for storing files with different versions. The database is configured for storing file information that includes a file path of each of the files. The file manager server includes an access control list, a file creating module, a files comparing module, a files merging module and a file dividing module. The access control list is configured for illustrating all the accessible rights to corresponding user, wherein the accessible rights comprises the right for comparing selected files, the right for merging selected files and the right for dividing a selected file. The file creating module is configured for creating files, saving the files in the FTP server, and saving information of the files in the database. The files comparing module is configured for reading from the FTP server selected files that need to be compared according to respective file paths if a files comparing request is received, comparing the selected files, and outputting differences between the selected files. The files merging module is configured for reading from the FTP server selected files that need to be merged according to respective file paths if a files merging request is received, merging the selected files to create a merged file, and saving information of the merged file in the database. The file dividing module is configured for reading from the FTP server a selected file that needs to be divided according to a corresponding file path and a file position of the file, if a file dividing request is received, dividing the selected file into two files at the file position, and saving information of two divided files in the database. 
     A computer-based method for managing files is also provided. The method includes the steps of: configuring an access control list, illustrating all the accessible rights to corresponding users, wherein the accessible rights comprises the right for comparing selected files, the right for merging selected files and the right for dividing a selected file; saving created files in a file transfer protocol (FTP) server, and saving file information of the files in a database, the file information including a file path of each of the files; reading from the FTP server selected files that need to be compared according to respective file paths if a files comparing request is received, comparing the selected files, and outputting differences between the selected files; reading selected files that need to be merged from the FTP server according to respective file paths if a files merging request is received, merging the selected files to create a merged file, and saving information of the merged file in the database; reading from the FTP server a selected file that needs to be divided according to a corresponding file path and a file position of the file, if a file dividing request is received, dividing the selected file into two files at the file position, and saving information of two divided files in the database. 
     Other systems, methods, features, and advantages of the present invention will be or become apparent to one with skill in the art upon examination of the following drawings and detailed description. 
    
    
     
       BRIEF DESCRIPTION OF THE DRAWINGS 
         FIG. 1  is a schematic diagram of a hardware configuration of a system for managing files in accordance with a preferred embodiment; 
         FIG. 2  is a schematic diagram showing function modules of a file manager server of the system of  FIG. 1 ; and 
         FIG. 3  is a flowchart of a preferred method for managing files in accordance with one embodiment. 
     
    
    
     DETAILED DESCRIPTION OF THE INVENTION 
       FIG. 1  is a schematic diagram of a hardware configuration of a system for managing files (hereinafter, “the system”) in accordance with a preferred embodiment. The system typically includes a computer  10 , a file manager server  30 , a database  40 , and a file transfer protocol (FTP) server  50 . The computer  10  connects to the file manager server  30  through a network  20 , and the file manager server  30  connects with the database  40  and the FTP server  50 . The FTP server  50  is configured for storing files. The database  40  is configured for storing information of each of the files. Each of the files may include a file identifier, a file name, a file version number, a file path, and a user-selected status of the file. Each of the files may have different versions, each of which may be represented by a file version number such as 1.0 or 2.0. The database  40  stores a unique identifier of each of the files. The file path is a location of a file stored in the FTP server  50 . The user-selected status is the record of different versions of each of the files by using user-selected phrases such as “draft”, “formal” and “final”. The file manager server  30  may obtain a file path from the database  40 , and send the file path to the computer  10  in a hyperlink format. By clicking on the hyperlink, a user can open a corresponding file from the FTP server  50  according to the file path and modify the file with the computer  10 . The file manager server  30  can save the modified file in the FTP server  50 , and save information of the modified file in the database  40 . 
     The file managing server  30  stores an access control list illustrating all the accessible rights to corresponding users, wherein the accessible rights includes the right for comparing selected files, the right for merging selected files, the right for dividing a selected file, the right for encrypting selected files, the right for decrypting selected files and the right for recording logs. To set a right such as the right of comparing selected files, a variable is generally used. For example, the administrator can authorize the right of comparing selected files to a user by setting the value of the variable as “true.” In other way, the right of comparing selected files may be removed by resetting the variable value from “true” to “false.” 
     When receiving a files comparing request (i.e., the user selects two files having different version numbers to be compared), the file manager server  30  reads from the FTP server  50  the two selected files according to the file paths, compares the two selected files, and outputs differences between the two selected files on the computer  10 . When receiving a files merging request (i.e., the user selects two files having different version numbers to be merged), the file manager server  30  reads from the FTP server  50  the two selected files according to the file path of each of the two selected files, merges the two selected files to create a merged file, and saves information of the merged file in the database  40 . When receiving a file dividing request (i.e., the user selects a to-be-divided file and a file position), the file manager server  30  reads the selected file from the FTP server  50  according to the file path of the selected file, divides the selected file into two files at the file position, and saves information of two divided files in the database  40 . 
       FIG. 2  is a schematic diagram showing function modules of the file manager server  30 . The file manager server  30  may include an access control list  300 , a file creating module  310 , a file encrypting module  311 , a file decrypting module  312 , a files comparing module  313 , a files merging module  314 , a file dividing module  315 , and a recording module  316 . 
     The access control list  300  is configured for illustrating all the accessible rights to corresponding users, wherein the accessible rights includes the right for comparing selected files, the right for merging selected files, the right for dividing a selected file, the right for encrypting selected files, the right for decrypting selected files and the right for recording logs. The file creating module  310  is configured for creating files, and saving the files in the FTP server  50  after the file encrypting module  311  encrypts the files. The file creating module  310  also saves information of each of the files (i.e., the file identifier, the file name, the file version number, the file path, and the user-selected status) in the database  40 . 
     When the file manager server  30  receives a files comparing request from the computer  10  (i.e., a user selects two files representing different versions of an original file, each of the two selected files having different version numbers relating to the original file), the files comparing module  313  reads the two selected files from the FTP server  50  according to the file paths if the identity of the user is valid (i.e., the user passes the verification of his or her username and password, and the access control list  300  includes the right for comparing selected files). The file decrypting module  312  decrypts the selected files if the identity of the user is valid. Then, the files comparing module  313  compares the two selected files, and outputs the differences between the two selected files. If the identity of the user is not valid (i.e., the user doesn&#39;t passes the verification of his or her username and password, or the access control list  300  does not include the user right for comparing selected files of the user), the files comparing request will not be processed. 
     When the file manager server  30  receives a files merging request from the computer  10  (i.e., the user selects two files having different version numbers to be merged), the files merging module  314  reads from the FTP server  50  the two selected files according to the file path of each of the two selected files if the identity of the user is valid (i.e., the user passes the verification of his or her username and password, and the access control list  300  includes the right for merging selected files). The file decrypting module  312  decrypts the selected files if the identity of the user is valid. Then, the files merging module  314  merges the two selected files to create a merged file, and saves the information of the merged file (i.e., the file identifier, the file name, the file version number, the file path, and the user-selected status) in the database  40 . If the identity of the user is not valid (i.e., the user doesn&#39;t passes the verification of his or her username and password, or the access control list  300  does not include the user right for merging selected files of the user), the files merging request will not be processed. 
     When the file manager server  30  receives a file dividing request from the computer  10  (i.e., the user selects a file to be divided and a file position for the file dividing), the file dividing module  315  reads from the FTP server  50  the selected file according to the file path of the selected file if the identity of the user is valid (i.e., the user passes the verification of his or her username and password, and the access control list  300  includes the right for dividing a selected file). The file decrypting module  312  decrypts the selected file if the identity of the user is valid. Then, the file dividing module  315  divides the selected file into two files at the file position, and saves information of the two divided files (i.e., the file identifier, the file name, the file version number, the file path, and the user-selected status) in the database  40 . If the identity of the user is not valid (i.e., the user doesn&#39;t passes the verification of his or her username and password, or the access control list  300  does not include the user right for dividing a selected file of the user), the file dividing request will not be processed. 
     The recording module  316  is configured for recording errors in process of the files comparing, the files merging, and the file dividing, wherein the errors include the alarming message that the user has no accessible right to do a corresponding file process such as the files comparing. 
       FIG. 3  is a flowchart of a preferred method for managing files in accordance with one embodiment. In step S 401 , an administrator sets the access control list  300  for illustrating all the accessible rights to corresponding users, wherein the accessible rights includes the right for comparing selected files, the right for merging selected files, the right for dividing a selected file, the right for encrypting selected files, the right for decrypting selected files and the right for recording logs. 
     In step S 402 , a user creates files to be managed through the file creating module  310 . The file creating file  310  saves the files in the FTP server  50  after the file encrypting module  311  encrypts the files, and saves information of each of the files (i.e., the file identifier, the file name, the file version number, the file path, and the user-selected status) in the database  40 . 
     In step S 403 , the file manager server  30  judges whether a files comparing request is received from the computer  10 . If no files comparing request is received, the procedure goes to step S 405  described below. 
     When the file manager server  30  receives the files comparing request (i.e., a user selects two files representing different versions of an original file, each of the two selected files having different version numbers relating to the original file), in step S 404 , the files comparing module  313  reads from the FTP server  50  the two selected files according to the file paths if the identity of the user is valid (i.e., the user passes the verification of his or her username and password, and the access control list  300  includes the right for comparing selected files). The file decrypting module  312  decrypts the two selected files if the identity of the user is valid. Subsequently, the files comparing module  313  compares the two selected files, and outputs the differences between the two selected files. If the identity of the user is not valid (i.e., the user doesn&#39;t passes the verification of his or her username and password, or the access control list  300  does not include the user right for comparing selected files of the user), the files comparing request will not be processed, and the recording module  316  records an error message, wherein the error message shows that the user does not have the right to do the files comparing. 
     In step S 405 , the file manager server  30  judges whether a files merging request is received from the computer  10 . If no files merging request is received, the procedure goes to step S 407  described blow. 
     When the file manager server  30  receives the files merging request (i.e., the user selects two files having different version numbers to be merged), in step S 406 , the files merging module  314  reads from the FTP server  50  the two selected files according to the file path of each of the two selected files if the identity of the user is valid (i.e., the user passes the verification of his or her username and password, and the access control list  300  includes the right for merging selected files). The file decrypting module  312  decrypts the two selected files if the identity of the user is valid. Subsequently, the files merging module  314  merges the two selected files to create a merged file, and saves the information of the merged file (i.e., the file identifier, the file name, the file version number, the file path, and the user-selected status) in the database  40 . If the identity of the user is not valid (i.e., the user doesn&#39;t passes the verification of his or her username and password, or the access control list  300  does not illustrate that the user have the right for merging selected files), the files merging request will not be processed, and the recording module  316  records an error message, wherein the error message shows that the user does not have the right to do the files merging. 
     In step S 407 , the file manager server  30  judges whether a file dividing request is received from the computer  10 . If no file dividing request is received, the procedure ends. 
     When the file manager server  30  receives the file dividing request (i.e., the user selects a file to be divided and a file position for the file dividing), in step S 408 , the file dividing module  315  reads from the FTP server  50  the selected file according to the file path of the selected file if the identity of the user is valid (i.e., the user passes the verification of his or her username and password, and the access control list  300  includes the right for dividing a selected file). The file decrypting module  312  decrypts the selected file if the identity of the user is valid. Subsequently, the file dividing module  315  divides the selected into two files at the file position, and saves information of the two divided files (i.e., the file identifier, the file name, the file version number, the file path, and the user-selected status) in the database  40 . If the identity of the user is not valid (i.e., the user doesn&#39;t passes the verification of his or her username and password, or the access control list  300  does not include the user right for dividing a selected file of the user), the file dividing request will not be processed, and the recording module  316  records an error message, wherein the error message shows that the user does not have the right to do the files dividing. 
     It should be emphasized that the above-described embodiments of the present invention, particularly, any “preferred” embodiments, are merely possible examples of implementations, merely set forth for a clear understanding of the principles of the invention. Many variations and modifications may be made to the above-described embodiment(s) of the invention without departing substantially from the spirit and principles of the invention. All such modifications and variations are intended to be included herein within the scope of this disclosure and the present invention and protected by the following claims.