pub struct Converter { /* private fields */ }Expand description
変換処理のファサード
ExcelファイルをMarkdown形式に変換するためのメインエントリーポイントです。
ConverterBuilderを使用して構築された設定に基づいて変換処理を実行します。
§使用例
use xlsxzero::ConverterBuilder;
use std::fs::File;
let converter = ConverterBuilder::new().build()?;
let input = File::open("example.xlsx")?;
let mut output = Vec::new();
converter.convert(input, &mut output)?;Implementations§
Source§impl Converter
impl Converter
Sourcepub fn convert<R: Read + Seek, W: Write>(
&self,
input: R,
output: W,
) -> Result<(), XlsxToMdError>
pub fn convert<R: Read + Seek, W: Write>( &self, input: R, output: W, ) -> Result<(), XlsxToMdError>
ExcelファイルをMarkdown形式に変換
§引数
input- Excelファイルを読み込むためのリーダー(Read + Seekトレイトを実装)output- Markdown出力先のライター(Writeトレイトを実装)
§戻り値
Ok(())- 変換に成功した場合Err(XlsxToMdError)- エラーが発生した場合
§処理フロー
- WorkbookParserの初期化
- シート選択
- 各シートについて処理(ループ)
- シートのパース
- セルのフォーマット
- グリッドの構築
- Markdown/HTML出力(戦略に応じて)
- 出力バッファをフラッシュ
§使用例
§ファイルからファイルへの変換
use xlsxzero::ConverterBuilder;
use std::fs::File;
let converter = ConverterBuilder::new().build()?;
let input = File::open("example.xlsx")?;
let output = File::create("output.md")?;
converter.convert(input, output)?;注意: FileはCloneを実装していないため、メモリバッファを使用する場合はCursorを使用してください。
§メモリバッファからの変換
use xlsxzero::ConverterBuilder;
use std::io::Cursor;
let converter = ConverterBuilder::new().build()?;
let excel_data: Vec<u8> = vec![]; // Excelファイルのバイト列
let mut markdown_output = Vec::new();
converter.convert(Cursor::new(excel_data), &mut markdown_output)?;§標準出力への変換
use xlsxzero::ConverterBuilder;
use std::fs::File;
let converter = ConverterBuilder::new().build()?;
let input = File::open("example.xlsx")?;
converter.convert(input, std::io::stdout())?;注意: FileはCloneを実装していないため、実際の使用ではFileを直接使用できますが、
メモリバッファを使用する場合はCursorを使用してください。
Sourcepub fn convert_to_string<R: Read + Seek>(
&self,
input: R,
) -> Result<String, XlsxToMdError>
pub fn convert_to_string<R: Read + Seek>( &self, input: R, ) -> Result<String, XlsxToMdError>
ExcelファイルをMarkdown形式の文字列に変換
§引数
input- Excelファイルを読み込むためのリーダー(Read + Seekトレイトを実装)
§戻り値
Ok(String)- 変換されたMarkdown文字列Err(XlsxToMdError)- エラーが発生した場合
§使用例
use std::fs::File;
use xlsxzero::ConverterBuilder;
let converter = ConverterBuilder::new().build()?;
let input = File::open("example.xlsx")?;
let markdown = converter.convert_to_string(input)?;
println!("{}", markdown);Trait Implementations§
Auto Trait Implementations§
impl Freeze for Converter
impl RefUnwindSafe for Converter
impl Send for Converter
impl Sync for Converter
impl Unpin for Converter
impl UnwindSafe for Converter
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more