首页 > 解决方案 > c# 中的二进制到 .Beep 方法

问题描述

嘿,我正在尝试做一些不同的事情,即将字符串转换为二进制,然后将二进制转换为 0 的低音和 1 的高音。但是我完全不知道该怎么做,我在想使用 .Beep 这是代码:

using System;
using System.Linq;
using System.Text;

namespace SoundHyperLink
{
    class Program
    {

        static void Main(string[] args)
        {
            Console.WriteLine("imput url ");
            string stringImput = Console.ReadLine();
            string BinaryString = (ToBinaryString(Encoding.UTF8, stringImput));
            Console.WriteLine(BinaryString);
            Console.ReadLine();

        }

        static string ToBinaryString(Encoding encoding, string text)
        {
            return string.Join("", encoding.GetBytes(text).Select(n => Convert.ToString(n, 2).PadLeft(8, '0')));
        }

        public void ToSoundString(string message)
        {



        }

如果有人可以帮助我,我会很高兴,因为我在互联网上找不到任何东西

标签: c#audioencryptionbinary

解决方案


为每个 0 和 1 定义一个频率并像这样使用它:

static void Main(string[] args)
{
    Console.WriteLine("imput url ");
    string stringImput = Console.ReadLine();
    string BinaryString = (ToBinaryString(Encoding.UTF8, stringImput));
    Console.WriteLine(BinaryString);
    ToSoundString(BinaryString);
    Console.ReadLine();
}

static string ToBinaryString(Encoding encoding, string text)
{
    return string.Join("", encoding.GetBytes(text).Select(n => Convert.ToString(n, 2).PadLeft(8, '0')));
}

    public static void ToSoundString(string message)
    {
        message.ToList().ForEach(f =>
        {
            switch (f)
            {
                case '0':
                    Console.Beep(500, 100);
                    break;

                case '1':
                    Console.Beep(800, 100);
                    break;
            }
        });
    }

推荐阅读