【问题标题】:Send data with .bat file使用 .bat 文件发送数据
【发布时间】:2022-06-11 23:44:04
【问题描述】:

我有一个 c# 项目,我在其中启动了一个应用程序 (.exe)。

该程序然后执行一个 .bat 文件。

我需要将该脚本中的数据返回到我的 c# - 数据是一个简单的字符串。

我正在考虑通过 TCP/IP 或使用 UDP 发送它。但我得到了零蝙蝠 编程技能 - 并问自己这是否可能。也许 some1 可以告诉我它是否可能以及最好的方法是什么。

也许我什至不必通过物联网发送它,反正它都在同一台计算机上。

总之,我只想将一个字符串从批处理文件发送到一个 c# 项目。

我在互联网上搜索了很多,但我没有找到任何东西。

谢谢 里昂

【问题讨论】:

  • 您还可以使用 echo 命令将字符串写入 txt 文件,以供 C# 应用程序读取。例如:echo Hello World> test.txt 会将“Hello World”写入与调用 .bat 的目录相同的名为“test”的 txt 文件中。 Emager 的链接可能是更好的方法,因为它不需要从磁盘写入/读取
  • 您的帖子可能需要一些清晰度。您的程序启动了另一个执行批处理脚本的程序(使用 System.Diagnostics.Process)?批处理脚本有什么作用?以下内容可能会有所帮助:How do I ask a good question.
  • 我的 bat 编程技能为零:批处理脚本已经存在了很长一段时间。如果您使用您最喜欢的搜索引擎搜索batch script,您会发现许多结果将告诉您如何创建一个。

标签: c# batch-file tcp udp


【解决方案1】:

你的问题不是很清楚,所以你寻求帮助是因为;您无法将 .bat 进程的结果输出到您的 c# 项目?

如果是你遇到的问题,试着去做;

+您的 .bat 文件:

(your_code/process) >output.txt

+你的 c# 项目:

class ReadFromFile
{
    static void Main()
    {

        // Read the file as one string.
      // And set 'batouput' as variable

        string batouput = System.IO.File.ReadAllText(@"Your_Path\output.txt");

        // Display the file contents to the console. Variable text is a string.
        System.Console.WriteLine("Contents of output.txt = {0}", text);
      
      //or this line
      Console.WriteLine(batouput);
    }
}

【讨论】:

    猜你喜欢
    • 2019-10-03
    • 2012-04-22
    • 2018-05-08
    • 1970-01-01
    • 2013-05-10
    • 1970-01-01
    • 1970-01-01
    • 2015-01-03
    • 2014-01-08
    相关资源
    最近更新 更多