• 小玩意


    今天看到一哥们些的一个小玩意:帮助复制VS中代码时能保留原格式并且不会出现乱码,真心佩服这个哥们,虽然实现很简单,就几句代码,但是他是个有心人啊,把代码弄过来,自己做个exe,方便以后写文档时候贴代码用。

    程序截图:

    使用时,先正常复制代码到剪贴板,然后点击“乱码修正”按钮,最后直接粘贴到Word里面就不会有乱码了。

    附代码:

    using System;
    using System.Collections.Generic;
    using System.ComponentModel;
    using System.Data;
    using System.Drawing;
    using System.Linq;
    using System.Text;
    using System.Windows.Forms;
    
    namespace CopyCodeSofte
    {
        public partial class Form1 : Form
        {
            public Form1()
            {
                InitializeComponent();
            }
    
            private void CopyBtn_Click(object sender, EventArgs e)
            {
                //取得剪贴板内容
                IDataObject dataObject = Clipboard.GetDataObject();
                if (dataObject.GetDataPresent(DataFormats.Rtf))
                {
                    //取出RTF格式
                    string rtf = dataObject.GetData(DataFormats.Rtf) as string;
                    //以Regex.Replace去除多余字元(註: 不管是否有問題,一律強制處理)
                    string fixedRtf =
                      System.Text.RegularExpressions.Regex.Replace(rtf, @"\uinput2(?<uc>\u-?d*)s..",
                    (m) =>
                    {
                        return m.Groups["uc"].Value + "?";
                    });
                    //另建新DataObject物件
                    DataObject newDataObject = new DataObject();
                    //RTF格式用修正後的字串,其餘依原值
                    foreach (String t in dataObject.GetFormats())
                        newDataObject.SetData(t,
                        t == "Rich Text Format" ? fixedRtf :
                        dataObject.GetData(t));
                    //将修正内容写入剪贴板
                    Clipboard.SetDataObject(newDataObject, true);
                    MessageBox.Show("中文乱码修正成功!
    现在您可以直接到Word里按Ctrl+V粘贴了!", "成功");
                }
                else
                    MessageBox.Show("您粘贴的不是代码!", "错误");
            }
        }
    }

    哈哈~~

  • 相关阅读:
    2018.7.26笔记(变量的数据类型,if语句)
    id(),is 和 ==的区别,编码和解
    2018.7.31笔记(列表的基本操作)
    阅读与感悟如何高效学习
    说说设计模式 单例模式
    简单说说Java知识点 多线程
    阅读与感悟联盟
    阅读与感悟非暴力沟通
    简单说说Java知识点 HashMap
    MySQL知识树存储引擎
  • 原文地址:https://www.cnblogs.com/zcftech/p/3177410.html
Copyright © 2020-2023  润新知