2016-11-04 2 views
0

私にはわからないエラーで問題があります。私のプログラムの目的は、ファイル "テスト"の文字カウントですが、私はこのエラー "関数core.stdc.stdio.getc(共有(_IO_FILE)*ストリーム)引数型(ファイル)を使用して呼び出すことはできません"D言語を使用してファイル内の文字を読み取る

は、ここに私のコードです:

import std.stdio; 
import std.file; 
import std.string; 
import core.stdc.stdio; 




void main() 
{ 

    char ch; 
    int charCount; 



    File file = File("test.txt","w"); 

    file=File("test,txt","r"); 

    while(!file.eof()) 
    { 

     ch = getc(file); 
     charCount++; 

    } 



    file.close(); 




} 

答えて

1

std.stdio.FileはCファイルハンドルではありませんが、あなたは1を要求するCライブラリからgetcを使用しています。

最も簡単な方法は、一度にファイル全体を読み込む、readText from std.fileを使用している:

int count = "test.txt".readText.length; 

それは文字の配列を返すので、あなたは自分のカウントを取得するためにその配列の長さを取ることができます。

関連する問題