각 줄의 첫 번째 X 문자를 기반으로 텍스트 파일의 내용을 빠르게 분류 할 것을 권장하는 사람이 있습니까? 알파벳순으로 Java에서 파일의 내용을 알파벳 순으로 정렬하는 방법
Adrian Graham some more text here
John Adams some more text here
텍스트
다음과 같은 예를 들어 내가 텍스트 파일에있는 경우는 그 다음 또 다른 기록은 예를 들면 위해 삽입 할 필요가있다.Bob Something some more text here
나는 정렬 된 파일을 유지할 필요가 있지만, 이것은 오히려 큰 파일이며 차라리 한 번에 메모리에 완전히로드되지 것입니다. 큰 것은 약 500 000 라인을 의미하므로 아마도 엄청나게 크지 않을 것입니다.
나는 주위를 둘러 보았고 http://www.codeodor.com/index.cfm/2007/5/14/Re-Sorting-really-BIG-files---the-Java-source-code/1208 을 찾았습니다. 누군가 다른 방법을 제안 할 수 있는지 알고 싶었습니까? 두 번째 의견을 내기 위해서? 내가 읽기 전에 위의 링크 된 문서
내 초기 생각을했다 : 선은 "A"로 시작하는 경우
는 Z
에 예를 들어 A에 대한 여러 파일로
분할을 파일 읽기 다음은 다음 그 내용을 분류 (명확한 생각하는 방법을 아직 떨어져 알파벳 순서에서)
이 없습니다파일의 각 a.txt이
라는 파일에 기록됩니다 0그럼 데이터 읽기에 관해서라면, 내가 A로 시작하는 줄을 찾고 싶다면 A.txt를 엽니 다. 새 줄을 삽입 할 때 똑같은 것이 적용되고 파일의 끝에 추가됩니다. . 나중에 삽입이 끝나면 내 정렬 프로그램을 호출하여 추가 된 파일을 다시 정렬 할 수 있습니다.
예를 들어 이와 같은 몇 가지 결함이 있다는 것을 알고 있습니다. 특정 파일로 시작하는 줄 수는 짝수가 아니기 때문에 일부 파일은 다른 파일보다 클 수 있습니다.
다시 접근해야하는 이유에 대한 두 번째 의견이 필요한 이유는 무엇입니까? 현재 프로그램은 java에 있지만 어떤 프로그래밍 언어도이를 달성 할 수있는 예제로 사용될 수 있습니다 ... 내가 필요한 것을 포팅 할 것입니다.
미리
에 감사 (사람이 내가 의도적으로 이런 식으로 정보를 저장하여 자신에게 두통을 제공하기 위해 노력하고 있지 않다 궁금하다면, 내가 대신 데이터베이스의 어떤 종류를 사용하여 파일에 데이터를 저장하는 고통스러운 작은 프로그램을 상속)
파일을 열어 본 적이 있다면 왜 데이터베이스에 저장하지 않는 것입니까? –
내가 3 항아리, 주 프로그램, 일부 util 물건과 파일 저장 및 검색을 처리하는 세 번째 항아리가 있기 때문에 나는 주 프로그램의 소스 만 갖고있다 ... 주 항아리와 유틸리티 항아리 모두 세 번째 항과 상호 작용한다 항아리는 내가 상속 할 수 있고 여러 가지 방법이 무작위로 읽히고 덮어 쓸 수 있다는 것을 의미하는 jar입니다. 아직 프로그램에서 발견 했으므로 파일을 제거하는 것이 더 어렵습니다. db를 연결하십시오. 그것의 가난하게 작성된 부드럽고 명백한 그들은 다시 그것을 개선하기 위해 다시 작업 할 의도가 없었습니다. ... – zcourts
기본적으로 나는 피하려고 노력하고있는 거대한 재 작성없이 단순히 db를 추가하는 방법을 보지 못합니다. – zcourts