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

如何实现控制台输出自动复制到剪贴板(含C#重复输出场景)

实现控制台输出内容自动复制到剪贴板

你可以先把100次输出内容拼接成带换行的完整字符串,再调用系统剪贴板API完成复制,同时保留原有的控制台输出功能。修改后的代码如下:

using System;
using System.Text;
using System.Windows.Forms;

class Program
{
    // 剪贴板操作需要STA线程,添加此属性
    [STAThread]
    static void Main()
    {
        string input = Console.ReadLine();
        
        // 拼接100次输入内容,每行一个
        StringBuilder outputContent = new StringBuilder();
        for (int a = 1; a <= 100; a++)
        {
            outputContent.AppendLine(input);
        }
        
        // 输出到控制台
        Console.Write(outputContent.ToString());
        
        // 复制到剪贴板
        Clipboard.SetText(outputContent.ToString());
        
        Console.WriteLine("\n内容已复制到剪贴板");
    }
}

注意事项:

  • 确保项目已引用System.Windows.Forms程序集:右键项目 → 管理NuGet程序包,搜索并安装System.Windows.Forms(适用于.NET Core/.NET 6+),或者在.NET Framework中直接添加引用。
  • 必须添加[STAThread]属性,因为剪贴板操作要求线程处于单线程单元(STA)模式,控制台程序默认是多线程单元(MTA),不加会抛出异常。
  • 使用StringBuilder拼接字符串比直接做string += input + "\n"更高效,尤其适合循环次数较多的场景。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.15 05:35:17