一種txt文本數據的分割方法和裝置的制造方法
【技術領域】
[0001]本發明涉及計算機應用技術領域,特別的,涉及一種txt文本數據的分割方法和
目.0
【背景技術】
[0002]txt是微軟在操作系統上附帶的一種文本格式,也是最常見的一種文件格式,早在DOS時代就廣泛應用,主要用于存取文本信息,即文字信息,現在的操作系統大多使用記事本等程序保存txt文本數據,日常使用的大多數軟件都可以查看txt文本數據,如記事本、UltraEdit、瀏覽器等等。
[0003]當需要打開txt文本數據時,會調用相應的計算機內存。以UltraEdit為例,以文本方式打開一個較大的txt文本數據時,首先將txt文本數據的部分內容調入內存中預設的文件緩沖里,當需要進行翻頁瀏覽下一頁的文本內容時,此時所要求讀取的文本內容由于沒有預先調用到內存當中,而需要從原始txt文本文件中重新將需要讀取的內容調入內存。由于每次讀取一頁的txt文本內容時,都需要再次調用計算機內存,因此,可能存在計算機內存響應不及時的問題,給用戶閱讀txt文本數據帶來了時間的大量消耗,不利于用戶快速、及時的獲取txt文本數據中的內容。
[0004]而如果用記事本方式打開txt文本數據,通常情況下,會將完整的內容全部調入可用內存中,如果需要調用的內存超過可用內存空間,則txt文本數據調入到硬盤上的Swap文件(虛擬內存里),如果虛擬內存還不夠用,就會彈出內存不夠的警告框。也就是說,如果計算機本身的可用內存空間不夠大時,極有可能造成txt文本數據無法打開,以當前主流計算機的4g內存配置來說,其即無法打開數百M的txt文本。
[0005]因此,在現有技術中,受到計算機設備的硬件配置限制,用戶在打開或閱讀txt文本文件時,常常由于可用內存不足,造成具有較大存儲容量txt文本數據無法打開,給日常的工作、生產、學習帶來了極大的不便,現有技術中缺少一種能夠有效解決用戶打開具有較大存儲容量txt文本數據所面臨的內存不足的問題。
【發明內容】
[0006]本發明提供一種txt文本數據的分割方法和裝置,用以將大存儲容量的txt文本數據進行分割,實現快速、便捷地打開大存儲容量的txt文本的目的。
[0007]本發明提供了一種txt文本數據的分割方法,包括:
[0008]步驟A:獲取待分割的txt文本數據,預先設置分割后的txt文本數據的宏值,所述宏值為分割后的每個txt文本數據的最大存儲容量;
[0009]步驟B:根據預設的讀入函數,每次讀入一行所述待分割的txt文本數據的內容,保存到新建的第一文本中,并判斷所述第一文本是否達到預設的宏值要求;
[0010]步驟C:如果所述步驟B中的第一文本達到宏值要求,將所述第一文本保存到預設路徑;
[0011]如果未達到,則再次執行所述步驟B。
[0012]本發明實施例的一些有益技術效果可以包括:
[0013]在該實施例中,通過預先根據本地設備能夠支持打開的單個txt文本數據的容量,設定分割后的每個txt文本的最大存儲容量。采用每次讀入分割前的大存儲容量的txt文本數據中一行內容的方式,將該txt文本數據中的內容逐漸讀入到新建的分割后的txt文本中去,使得最終分割后的txt文本不用受到本地計算機設備的硬件配置的限制,能夠快速、便捷地打開。
[0014]在一個實施例中,在所述步驟B中的第一文本達到宏值要求,將所述第一文本保存到預設路徑之后還包括:
[0015]步驟D:判斷所述待分割的txt文本數據中未分割部分的存儲容量是否大于所述宏值,如果是,則新建第二文本,并重復所述步驟B ;
[0016]如果不是,則直接將所述未分割部分作為所述第二文本。
[0017]在該實施例中,還在每完成一次分割后,對剩余未分割的txt文本數據的存儲容量進行判斷,如果不大于預先設定的單個txt文本的最大存儲容量,可直接將該未分割的txt文本數據作為下一個分割后的文本,避免了不必要的重復分割操作,節省了工作時間。
[0018]在一個實施例中,在所述直接將所述未分割部分作為所述第二文本之前還包括:
[0019]步驟E:判斷所述未分割部分的存儲容量是否為零,如果是,則結束分割,保存分割后的全部txt文本數據;
[0020]如果不是,則直接將所述未分割部分作為所述第二文本。
[0021]在該實施例中,如果確定未分割的txt文本的存儲容量不大于單個文本最大存儲容量,還對其是否為零進行判斷,如果為零,則代表原始的大容量txt文本數據已經分割完畢,即可以直接結束分割流程;如果不為零,則將其作為最后一個分割后的txt文本。
[0022]在一個實施例中,所述預設的讀入函數為:
[0023]每行最多讀入1024個字節,判斷一行是否達到1024個字節;
[0024]如果一行未到1024個字節,則以換行符為結束標簽讀入一行;
[0025]如果一行超過1024個字節,則一次讀入1024個字節,剩下字節下次再讀入。
[0026]在該實施例中,對讀入函數的工作方式進行了具體限定,以每行最多讀入的字節數和該行是否包含換行符為依據,對每一行讀入的內容進行了更加詳細、具體的劃分。
[0027]在一個實施例中,在新建文本時,可根據預先設置的命名規則對所述新建文本進行命名,所述命名規則包括按照新建文本的順序將新建文本依次命名為待分割的txt文本數據文件名+ (a),所述a為第a次新建文本的順序;
[0028]所述命名規則還包括直接按照數字順序依次命名新建文本。
[0029]在該實施例中,給出了對分割后的txt文本進行命名的規則,如原始txt文本的文件名為論文,則根據本實施例提供的命名規則,分割后的txt文本可以命名為論文(I)、論文(2)......,也可以命名為如001、002......等,本實施例提供的方法為分割后的txt文本的命名提供了便利。
[0030]一種txt文本數據的分割裝置,包括:
[0031]分割設置模塊,用于獲取待分割的txt文本數據,預先設置分割后的txt文本數據的宏值,所述宏值為分割后的每個txt文本數據的最大存儲容量;
[0032]文本讀入模塊,用于根據預設的讀入函數,每次讀入一行所述待分割的txt文本數據的內容,保存到新建的第一文本中,并判斷所述第一文本是否達到預設的宏值要求;
[0033]文本存儲模塊,用于如果所述第一文本達到宏值要求,將所述第一文本保存到預設路徑;
[0034]如果未達到,則再次執行所述文本讀入模塊的操作。
[0035]在一個實施例中,還包括:
[0036]第一判斷模塊,用于判斷所述待分割的txt文本數據中未分割部分的存儲容量是否大于所述宏值,如果是,則新建第二文本,并重復所述文本讀入模塊的操作;
[0037]如果不是,則直接將所述未分割部分作為所述第二文本。
[0038]在一個實施例中,還包括:
[0039]第二判斷模塊,用于判斷所述未分割部分的存儲容量是否為零,如果是,則結束分害J,保存分割后的全部txt文本數據;
[0040]如果不是,則直接將所述未分割部分作為所述第二文本。
[0041]在一個實施例中,所述預設的讀入函數為:
[0042]每行最多讀入1024個字節,判斷一行是否達到1024個字節;
[0043]如果一行未到1024個字節,則以換行符為結束標簽讀入一行;
[0044]如果一行超過1024個字節,則一次讀入1024個字節,剩下字節下次再讀入。
[0045]在一個實施例中,所述預設的讀入函數為:
[0046]每行最多讀入1024個字節,判斷一行是否達到1024個字節;
[0047]如果一行未到1024個字節,則以換行符為結束標簽讀入一行;
[0048]如果一行超過1024個字節,則一次讀入1024個字節,剩下字節下次再讀入。
[0049]本發明實施例的txt文本數據的分割裝置,通過預先根據本地設備能夠支持打開的單個txt文本數據的容量,設定分割后的每個txt文本的最大存儲容量。采用每次讀入分割前