You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何让Rust std::format的填充宽度可通过变量动态配置

实现方法

Rust 的格式化宏(println!/format! 等)原生支持用参数动态指定宽度、对齐等配置,你只需要把固定的宽度值换成 {} 占位符加 $ 标识符即可,示例代码如下:

fn main() {
    let title = " Title ";
    // 动态配置的宽度变量,可从配置文件、用户输入等任意来源获取
    let width = 11;
    // 宽度位置用 width$ 标记,代表取传入的 width 参数作为宽度值
    println!("┌{:─^width$}┐", title, width = width);
}

运行这段代码输出和你原来的静态写法完全一致:

┌── Title ──┐

补充说明

  • 如果你需要连填充字符也做成动态配置,也可以用类似的参数占位写法:
    fn main() {
        let title = " Title ";
        let width = 11;
        let fill_char = '─';
        println!("┌{:fill^width$}┐", title, fill = fill_char, width = width);
    }
    
  • 格式化占位符中 $ 前缀的命名需要和你传入宏的参数名对应即可。

内容的提问来源于stack exchange,提问作者Dominik

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.05 14:24:00