【发布时间】:2021-11-25 07:40:49
【问题描述】:
我想使用带有String 的format! 宏作为第一个参数,但是因为宏需要一个字符串文字,所以我不能传递任何不同的东西。
我想这样做是为了将字符串动态添加到当前字符串中,以便在视图引擎中使用。如果有更好的方法,我愿意提供建议。
let test = String::from("Test: {}");
let test2 = String::from("Not working!");
println!(test, test2);
我真正想要实现的是下面的示例,其中 main.html 包含{content}。
use std::io::prelude::*;
use std::fs::File;
use std::io;
fn main() {
let mut buffer = String::new();
read_from_file_using_try(&mut buffer);
println!(&buffer, content="content");
}
fn read_from_file_using_try(buffer: &mut String) -> Result<(), io::Error> {
let mut file = try!(File::open("main.html"));
try!(file.read_to_string(buffer));
Ok(())
}
所以我想在格式化后打印main.html的内容。
【问题讨论】:
-
@Shepmaster:不是重复的;反之亦然:格式字符串是本题中的动态位。
标签: string format rust literals