2014-06-06 5 views
-1

.txt 파일의 문자 수를 계산해야합니다. 파일을 가져 왔는데 이제 문자를 계산해야합니다. 여기까지 내가 지금까지 가지고있는 것이있다..txt 파일의 문자 계산하기

namespace CharCount 
{ 
    class Program 
    { 
     static void Main(string[] args) 
     { 
      string fileName = @"dataentry.txt"; 
      string result; 
      result = Path.GetFileName(fileName); 
      Console.WriteLine("GetFileName {0} returns {1}", fileName, result); 
      Console.ReadLine(); 
     } 
    } 
} 
+0

가능한 [파일 C#의 문자 수 계산] (http://stackoverflow.com/questions/8214772/counting-number-of-characters-in-a-file-c-sharp) – quantdev

+0

-1 : 샘플은 파일에서 읽는 것과 절대 관련이 없습니다. –

+0

그게 무슨 소리 죠? –

답변

-1
FileInfo f = new FileInfo(fileName); 
long fileLength = f.Length; 
//fileLength should be the number of characters 

또는

public int GetNumOfCharsInFile(string filePath) 
{ 
    int count = 0; 
    using (var sr = new StreamReader(filePath)) 
    { 
     while (sr.Read() != -1) 
      count++; 
    } 
    return count; 
} 

참조 : Counting number of characters in a file C#

+0

-1 : 중복 질문의 코드를 복사하여 붙여 넣는 것은 실제로 답변이 아닙니다. 중복으로 제안하거나, 댓글로 추가하거나, 정말로 대답하고 싶다면 더 좋은 설명을 추가하십시오. –

+0

고맙습니다. 도움이되었습니다. –

0

당신은 사용할 수 있어야합니다 : MSDN하는 L에 따르면

File.ReadAllText(filename).Length 

ength property of string '현재 문자열 개체에있는 문자 수인 을 가져옵니다.'

http://msdn.microsoft.com/en-us/library/system.string.length.aspx

다른 답변

당신은 바이트의 수를 반환 사용 스트림을 찾을 수 있습니다.

현재 파일의 크기 (바이트)를 가져옵니다. ...

File.ReadAllText(filename).Length

단점 제공

http://msdn.microsoft.com/en-us/library/system.io.fileinfo.length.aspx

+0

고맙습니다. 도움이되었습니다. –

2

답변은 모두 유용하지만, 아무도 매우 명확하게 차이를 지정하지 : 당신은 전체 파일을 읽을 수 있고, 성능이 중요 할 수있다 이리.

위쪽 : .NET은 파일을 읽을 때 문자 인코딩을 고려합니다. 비 ASCII 파일이 있고 일부 문자가 실제로 여러 바이트 인 경우이 문자는 바이트 수가 아닌 문자 수를 제공합니다.

FileInfo f = new FileInfo(fileName); 
long fileLength = f.Length; 

단점이 실제로 파일의 내용을 확인하지 않습니다과의 텍스트가 1 바이트 문자 당인지 아닌지 알 수 없다. 문자 수와 다를 수있는 바이트 수를 반환합니다.

위쪽 : 성능 - 실제로 파일을 읽을 필요가 없습니다.

입력 파일에 대해 안전하게 가정 할 수있는 위치에 있다면 기본 입력을 사용하십시오 (귀하의 가정에 맞게 주석 달기). 귀하가 어떤 유형의 텍스트 파일인지 확실하지 않으면 첫 번째 파일을 사용하십시오 접수.

+0

감사합니다. 나는 FileInfo를 사용하여 끝났다. f = 새로운 FileInfo (fileName); 긴 fileLength = f.길이; **** 그러나 누군가가 이것을 할 경우, 공백을 계산하기 때문에 텍스트 파일의 끝에는 공백이 없어야합니다. –