VS 2010에서는 큰 목록의 문자열이 있고 목록의 각 항목에는 문자열 목록도 포함됩니다 (더 이상 설명하지 않습니다). 좋은 점은 추가 작업 만 수행된다는 것입니다. 목록에서 아무 것도 제거되지 않습니다.리스트를 파일에 저장하는 가장 효율적인 방법은 무엇입니까?
데이터베이스를 사용하고 싶지 않습니다. 목록이 꽤 커질 수 있기 때문에 XML은 나에게 느린 것처럼 보였다. 내 사건에 대한 일반적인 해결책을 찾지 못했습니다. 어떤 생각?
편집 : 좋아요, 일부 코드는 분명히 추측 할 수 있습니다.
Class Word
Public theWord As String
Public SubWords As New List(Of SubWord)
Public Count As Integer = 1
Sub New(ByRef Word As String)
theWord = Word
End Sub
Public Sub AddSubWord(ByRef Word As String)
Dim SubWordCount As Integer = SubWords.Count - 1
Dim Found As Boolean
For i = 0 To SubWordCount
If SubWords(i).theWord = Word Then
SubWords(i).Count += 1
Found = True
Exit For
End If
Next
If Found = False Then
SubWords.Add(New SubWord(Word))
End If
End Sub
Public Overrides Function ToString() As String
Return theWord
End Function
End Class
Class SubWord
Public theWord As String
Public Count As Integer = 1
Sub New(ByRef Word As String)
theWord = Word
End Sub
Public Overrides Function ToString() As String
Return theWord
End Function
End Class
또한 내가 가지고있는 목록입니다 :
Dim Words As New List(Of Word)
목적은 그것의 수를 증가하지 않을 경우 단어가 목록에없는 경우 목록에 단어를 추가하는 것입니다. 서브 워드와 동일합니다. 나중에 모든 목록은 개수에 따라 정렬됩니다. sooooo 많은 단어와 각 그들에 대한 거대한 하위 단어 목록이있을 것입니다.
이 더 범위를 좁힐하지 않는 의미 "효율적인"입니다. 또한 직렬화에는 속도, 크기, 순방향 호환성 등 여러 가지 중요한 고려 사항이 있습니다. 후자는 어떻습니까? – Jon
질문이 업데이트되었습니다. – theGD
List을 사용하지 않은 주요 이유가 있습니다. 포함 할 항목은 무엇입니까? 목록을 얼마나 자주 그리고 얼마나 오래 기억해야 하는가?로드 및 저장에 걸리는 시간은 "효율적인"측면에서 관련 이슈입니다. –