用C#打印自己的源代码

原创 2004年07月31日 12:07:00

发现自己以前写的无聊程序。拿出来发表一下。

要让一个程序能输出跟自己一样的源代码。首先,你会想到定义一个字符串,这个字符串的内容就是该源程序的代码,然后再把它输出。最关键的问题在于:输出程序代码中又有该字符串本身,如何解决这个问题呢?不多说了,看以下代码吧。

<?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" />

 

using System;

using System.IO;

class OutPutMyself

{      

    static void Main()

    {      

        char c = (char)34;  //用字符c来表示“双引号”

        string str = "using System;using System.IO;class OutPutMyself{static void Main(){char c = (char)34;string str =; StreamWriter srd;srd = File.CreateText(elwin.cs); srd.WriteLine(str.Substring(0,97) + c + str + c + str.Substring(97,41) + c + str.Substring(138,8) + c + str.Substring(146)); srd.Close();}}";

        StreamWriter srd;          

        srd = File.CreateText("elwin.cs"); 

        srd.WriteLine(str.Substring(0,97) + c + str + c + str.Substring(97,41) + c + str.Substring(138,8) + c + str.Substring(146));

        srd.Close();

    }                              

}

 

产生的是一个elwin.cs文件,里面的代码跟源程序一样的哦,不信的话在把他拷贝出来编译一下。

 

打印自身源代码的程序,一个通用方法

  打印自身源代码的程序,这是翻看《More Programming Pearls》时的一道作业题。 记得以前曾看到Ken Thompson老师的一个版本http://www.cnblogs.com/...
  • DelphiNew
  • DelphiNew
  • 2009-06-27 10:16:00
  • 4488

C#打印窗体数据源代码

  • 2011年07月24日 10:59
  • 55KB
  • 下载

打印自身源代码的程序

无意当中看到了这样一个问题: 任意选定一个语言写一个打印自身源代码的程序,这个程序不允许读取或者写其他文件的数据,程序必须是完全独立的。 很有趣吧?我正在学习C语言,这个问题是我在查找其他...
  • zx48822821
  • zx48822821
  • 2016-09-16 10:56:55
  • 1741

C#窗体图形图像打印源代码

  • 2011年07月24日 11:00
  • 126KB
  • 下载

C# 实现自己画内容并打印

1. 首先在界面中拉入三个控件,右边为panel 2. 界面初始化添加自打印事件,PrintEveryPage函数中添加打印内容  public FrmPrinter()        ...
  • shenshendeai
  • shenshendeai
  • 2017-06-06 11:23:28
  • 749

C#标签打印程序源码

  • 2010年12月28日 17:08
  • 716KB
  • 下载

C#万能打印源代码

  • 2017年11月07日 15:23
  • 3.78MB
  • 下载

CodeSoft条码打印C#二次开发最重要的代码

  • 2013年12月20日 17:06
  • 5KB
  • 下载

.net批量打印word源码C#_VS2012

  • 2014年12月13日 00:04
  • 187KB
  • 下载

打印自身的程序(python和c版)

python版 me='me=%r\nprint me %% me' print me % me
  • a664088970
  • a664088970
  • 2014-08-26 19:19:09
  • 372
收藏助手
不良信息举报
您举报文章:用C#打印自己的源代码
举报原因:
原因补充:

(最多只允许输入30个字)