Parser

Parser(DbConnection)

の新しいインスタンスを初期化しますParserデータベースからデータを抽出するクラス.

public Parser(DbConnection connection)
パラメータ タイプ 説明
connection DbConnection データベース接続。

備考

もっと詳しく知る:

次の例は、Sqlite データベースからデータを抽出する方法を示しています。

// DbConnection オブジェクトを作成します
DbConnection connection = new SQLiteConnection(string.Format("Data Source={0};Version=3;", Constants.SampleDatabase));
// データベースからテーブルを抽出する Parser クラスのインスタンスを作成します
using (Parser parser = new Parser(connection))
{
    // テキスト抽出がサポートされているかどうかを確認します
    if (!parser.Features.Text)
    {
        Console.WriteLine("Text extraction isn't supported.");
        return;
    }
    // toc 抽出がサポートされているかどうかを確認します
    if (!parser.Features.Toc)
    {
        Console.WriteLine("Toc extraction isn't supported.");
        return;
    }
    // テーブルのリストを取得
    IEnumerable<TocItem> toc = parser.GetToc();
    // テーブルを繰り返します
    foreach (TocItem i in toc)
    {
        // テーブル名を表示
        Console.WriteLine(i.Text);
        // 表の内容をテキストとして抽出します
        using (TextReader reader = parser.GetText(i.PageIndex.Value))
        {
            Console.WriteLine(reader.ReadToEnd());
        }
    }
}

関連項目


Parser(DbConnection, ParserSettings)

の新しいインスタンスを初期化しますParserデータベースからデータを抽出するクラス.

public Parser(DbConnection connection, ParserSettings parserSettings)
パラメータ タイプ 説明
connection DbConnection データベース接続。
parserSettings ParserSettings データ抽出のカスタマイズに使用されるパーサー設定。

備考

もっと詳しく知る:

次の例は、Sqlite データベースからデータを抽出する方法を示しています。

// DbConnection オブジェクトを作成します
DbConnection connection = new SQLiteConnection(string.Format("Data Source={0};Version=3;", Constants.SampleDatabase));
// データベースからテーブルを抽出する Parser クラスのインスタンスを作成します
using (Parser parser = new Parser(connection))
{
    // テキスト抽出がサポートされているかどうかを確認します
    if (!parser.Features.Text)
    {
        Console.WriteLine("Text extraction isn't supported.");
        return;
    }
    // toc 抽出がサポートされているかどうかを確認します
    if (!parser.Features.Toc)
    {
        Console.WriteLine("Toc extraction isn't supported.");
        return;
    }
    // テーブルのリストを取得
    IEnumerable<TocItem> toc = parser.GetToc();
    // テーブルを繰り返します
    foreach (TocItem i in toc)
    {
        // テーブル名を表示
        Console.WriteLine(i.Text);
        // 表の内容をテキストとして抽出します
        using (TextReader reader = parser.GetText(i.PageIndex.Value))
        {
            Console.WriteLine(reader.ReadToEnd());
        }
    }
}

関連項目


Parser(EmailConnection)

の新しいインスタンスを初期化しますParserリモート電子メール サーバーからデータを抽出するクラス.

public Parser(EmailConnection connection)
パラメータ タイプ 説明
connection EmailConnection メール接続。

備考

もっと詳しく知る:

次の例は、Exchange Server から電子メールを抽出する方法を示しています。

// Exchange Web サービス プロトコルの接続オブジェクトを作成します 
EmailConnection connection = new EmailEwsConnection(
    "https://outlook.office365.com/ews/exchange.asmx",
    "email@server",
    "password");
 
// Parser クラスのインスタンスを作成して、リモート サーバーから電子メールを抽出します
using (Parser parser = new Parser(connection))
{
    // コンテナの抽出がサポートされているかどうかを確認します
    if (!parser.Features.Container)
    {
        Console.WriteLine("Container extraction isn't supported.");
        return;
    }

// サーバーから電子メール メッセージを抽出します
IEnumerable<ContainerItem> emails = parser.GetContainer();
 
    // 添付ファイルを繰り返す
    foreach (ContainerItem item in emails)
    {
        // 電子メール メッセージの Parser クラスのインスタンスを作成します
        using (Parser emailParser = item.OpenParser())
        {
            // メール本文を抽出する
            using (TextReader reader = emailParser.GetText())
            {
                // メール本文を印刷する
                Console.WriteLine(reader == null ? "Text extraction isn't supported." : reader.ReadToEnd());
            }
        }
    }
}   

関連項目


Parser(EmailConnection, ParserSettings)

の新しいインスタンスを初期化しますParserリモート電子メール サーバーからデータを抽出するクラス.

public Parser(EmailConnection connection, ParserSettings parserSettings)
パラメータ タイプ 説明
connection EmailConnection メール接続。
parserSettings ParserSettings データ抽出のカスタマイズに使用されるパーサー設定。

備考

もっと詳しく知る:

次の例は、Exchange Server から電子メールを抽出する方法を示しています。

// Exchange Web サービス プロトコルの接続オブジェクトを作成します 
EmailConnection connection = new EmailEwsConnection(
    "https://outlook.office365.com/ews/exchange.asmx",
    "email@server",
    "password");
 
// Parser クラスのインスタンスを作成して、リモート サーバーから電子メールを抽出します
using (Parser parser = new Parser(connection))
{
    // コンテナの抽出がサポートされているかどうかを確認します
    if (!parser.Features.Container)
    {
        Console.WriteLine("Container extraction isn't supported.");
        return;
    }

// サーバーから電子メール メッセージを抽出します
IEnumerable<ContainerItem> emails = parser.GetContainer();
 
    // 添付ファイルを繰り返す
    foreach (ContainerItem item in emails)
    {
        // 電子メール メッセージの Parser クラスのインスタンスを作成します
        using (Parser emailParser = item.OpenParser())
        {
            // メール本文を抽出する
            using (TextReader reader = emailParser.GetText())
            {
                // メール本文を印刷する
                Console.WriteLine(reader == null ? "Text extraction isn't supported." : reader.ReadToEnd());
            }
        }
    }
}   

関連項目


Parser(string)

の新しいインスタンスを初期化しますParserclass.

public Parser(string filePath)
パラメータ タイプ 説明
filePath String ファイルへのパス。

備考

もっと詳しく知る:

次の例は、ローカル ディスクからドキュメントをロードする方法を示しています。

// filePath を使用して Parser クラスのインスタンスを作成します
using (Parser parser = new Parser(filePath))
{
    // テキストをリーダーに抽出します
    using (TextReader reader = parser.GetText())
    {
        // ドキュメントからテキストを出力します
        // テキスト抽出がサポートされていない場合、リーダーは null
        Console.WriteLine(reader == null ? "Text extraction isn't supported" : reader.ReadToEnd());
    }
}

関連項目


Parser(string, LoadOptions)

の新しいインスタンスを初期化しますParserクラスLoadOptions.

public Parser(string filePath, LoadOptions loadOptions)
パラメータ タイプ 説明
filePath String ファイルへのパス。
loadOptions LoadOptions ファイルを開くためのオプション。

備考

もっと詳しく知る:

ドキュメントのパスワードは LoadOptions クラスによって渡されます。

try
{
    // パスワードを使用して Parser クラスのインスタンスを作成します。
    using (Parser parser = new Parser(filePath, new LoadOptions(password)))
    {
        // テキスト抽出がサポートされているかどうかを確認します
        if (!parser.Features.Text)
        {
            Console.WriteLine("Text extraction isn't supported.");
            return;
        }
        // ドキュメントのテキストを印刷する
        using (TextReader reader = parser.GetText())
        {
            Console.WriteLine(reader.ReadToEnd());
        }
    }
}
catch (InvalidPasswordException)
{
    // パスワードが正しくないか空の場合はメッセージを出力します
    Console.WriteLine("Invalid password");
}

関連項目


Parser(string, ParserSettings)

の新しいインスタンスを初期化しますParserクラスParserSettings.

public Parser(string filePath, ParserSettings parserSettings)
パラメータ タイプ 説明
filePath String ファイルへのパス。
parserSettings ParserSettings データ抽出のカスタマイズに使用されるパーサー設定。

関連項目


Parser(string, LoadOptions, ParserSettings)

の新しいインスタンスを初期化しますParserクラスLoadOptionsParserSettings.

public Parser(string filePath, LoadOptions loadOptions, ParserSettings parserSettings)
パラメータ タイプ 説明
filePath String ファイルへのパス。
loadOptions LoadOptions ファイルを開くためのオプション。
parserSettings ParserSettings データ抽出のカスタマイズに使用されるパーサー設定。

備考

もっと詳しく知る:

次の例は、次の方法で情報を受け取る方法を示しています。ILoggerインターフェース:

// 試す
{
    // Logger クラスのインスタンスを作成します
    Logger logger = new Logger();
    // パーサー設定で Parser クラスのインスタンスを作成します
    using (Parser parser = new Parser(filePath, null, new ParserSettings(logger)))
    {
        // テキスト抽出がサポートされているかどうかを確認します
        if (!parser.Features.Text)
        {
            Console.WriteLine("Text extraction isn't supported.");
            return;
        }
        // ドキュメントのテキストを印刷する
        using (TextReader reader = parser.GetText())
        {
            Console.WriteLine(reader.ReadToEnd());
        }
    }
}
catch (InvalidPasswordException)
{
    ; // 例外を無視
}
 
private class Logger : ILogger
{
    public void Error(string message, Exception exception)
    {
        // エラーメッセージを表示
        Console.WriteLine("Error: " + message);
    }
    public void Trace(string message)
    {
        // イベントメッセージを出力
        Console.WriteLine("Event: " + message);
    }
    public void Warning(string message)
    {
        // 警告メッセージを表示
        Console.WriteLine("Warning: " + message);
    }
}

関連項目


Parser(Stream)

の新しいインスタンスを初期化しますParserclass.

public Parser(Stream document)
パラメータ タイプ 説明
document Stream ソース入力ストリーム。

備考

もっと詳しく知る:

次の例は、ストリームからドキュメントをロードする方法を示しています。

// ストリームで Parser クラスのインスタンスを作成します
using (Parser parser = new Parser(stream))
{
    // テキストをリーダーに抽出します
    using (TextReader reader = parser.GetText())
    {
        // ドキュメントからテキストを出力します
        // テキスト抽出がサポートされていない場合、リーダーは null
        Console.WriteLine(reader == null ? "Text extraction isn't supported" : reader.ReadToEnd());
    }
}

関連項目


Parser(Stream, LoadOptions)

の新しいインスタンスを初期化しますParserクラスLoadOptions.

public Parser(Stream document, LoadOptions loadOptions)
パラメータ タイプ 説明
document Stream ソース入力ストリーム。
loadOptions LoadOptions ファイルを開くためのオプション。

備考

もっと詳しく知る:

場合によっては、定義する必要がありますFileFormat 特殊なケース (データベース、電子メール サーバー) とコンテンツによるファイル タイプの検出の両方:

ドキュメントパスワードが渡されますLoadOptionsクラス:

// マークダウン ドキュメントの Parser クラスのインスタンスを作成します
using (Parser parser = new Parser(stream, new LoadOptions(FileFormat.Markup)))
{
    // テキスト抽出がサポートされているかどうかを確認します
    if (!parser.Features.Text)
    {
        Console.WriteLine("Text extraction isn't supported.");
        return;
    }
    using (TextReader reader = parser.GetText())
    {
        // ドキュメントのテキストを印刷する
        // マークダウンが検出されました。特殊記号のないテキストが印刷されます
        Console.WriteLine(reader.ReadToEnd());
    }
}
try
{
    // パスワードを使用して Parser クラスのインスタンスを作成します。
    using (Parser parser = new Parser(filePath, new LoadOptions(password)))
    {
        // テキスト抽出がサポートされているかどうかを確認します
        if (!parser.Features.Text)
        {
            Console.WriteLine("Text extraction isn't supported.");
            return;
        }
        // ドキュメントのテキストを印刷する
        using (TextReader reader = parser.GetText())
        {
            Console.WriteLine(reader.ReadToEnd());
        }
    }
}
catch (InvalidPasswordException)
{
    // パスワードが正しくないか空の場合はメッセージを出力します
    Console.WriteLine("Invalid password");
}

関連項目


Parser(Stream, ParserSettings)

の新しいインスタンスを初期化しますParserクラスParserSettings.

public Parser(Stream document, ParserSettings parserSettings)
パラメータ タイプ 説明
document Stream ソース入力ストリーム。
parserSettings ParserSettings データ抽出のカスタマイズに使用されるパーサー設定。

関連項目


Parser(Stream, LoadOptions, ParserSettings)

の新しいインスタンスを初期化しますParserクラスLoadOptionsParserSettings.

public Parser(Stream document, LoadOptions loadOptions, ParserSettings parserSettings)
パラメータ タイプ 説明
document Stream ソース入力ストリーム。
loadOptions LoadOptions ファイルを開くためのオプション。
parserSettings ParserSettings データ抽出のカスタマイズに使用されるパーサー設定。

備考

もっと詳しく知る:

次の例は、次の方法で情報を受け取る方法を示しています。ILoggerインターフェース:

// 試す
{
    // Logger クラスのインスタンスを作成します
    Logger logger = new Logger();
    // パーサー設定で Parser クラスのインスタンスを作成します
    using (Parser parser = new Parser(stream, null, new ParserSettings(logger)))
    {
        // テキスト抽出がサポートされているかどうかを確認します
        if (!parser.Features.Text)
        {
            Console.WriteLine("Text extraction isn't supported.");
            return;
        }
        // ドキュメントのテキストを印刷する
        using (TextReader reader = parser.GetText())
        {
            Console.WriteLine(reader.ReadToEnd());
        }
    }
}
catch (InvalidPasswordException)
{
    ; // 例外を無視
}
 
private class Logger : ILogger
{
    public void Error(string message, Exception exception)
    {
        // エラーメッセージを表示
        Console.WriteLine("Error: " + message);
    }
    public void Trace(string message)
    {
        // イベントメッセージを出力
        Console.WriteLine("Event: " + message);
    }
    public void Warning(string message)
    {
        // 警告メッセージを表示
        Console.WriteLine("Warning: " + message);
    }
}

関連項目