Computer >> 컴퓨터 >  >> 프로그래밍 >> C#

C# 콘솔에서 사용자 지정 경고음(비프음)을 재생하는 방법

C#에서는 Console.Beep() 메서드를 사용하여 콘솔 애플리케이션에서 간단한 경고음(비프음)을 손쉽게 재생할 수 있습니다. 이 메서드는 매개변수 없이 호출하면 기본 주파수와 길이로 소리를 내며, 주파수(Hz)재생 시간(밀리초)을 직접 지정해 사용자가 원하는 톤의 경고음을 만들 수도 있습니다.

지정할 수 있는 주파수 범위는 37Hz부터 32,767Hz까지이며, 재생 시간은 밀리초 단위로 설정합니다.

예제 1: 기본 경고음과 사용자 지정 경고음 재생

다음 예제는 매개변수 없이 기본 경고음을 재생하고, 이어서 주파수 1000Hz와 재생 시간 500밀리초를 지정하여 경고음을 재생합니다.

using System;

public class Demo {
   public static void Main(string[] args){
      Console.WriteLine("Displaying standard output stream...");
      Console.WriteLine("Standard Output Stream = " + Console.Out);
      Console.WriteLine("Beep sound through Console");
      Console.Beep();
      Console.WriteLine("Beep sound through Console with frequency 1000 hertz and duration 500 milliseconds");
      Console.Beep(1000, 500);
   }
}

출력 결과

위 코드를 실행하면 다음과 같은 출력 결과를 얻을 수 있습니다.

Displaying standard output stream...
Standard Output Stream = System.IO.TextWriter+SyncTextWriter
Beep sound through Console
Beep sound through Console with frequency 1000 hertz and duration 500 milliseconds

예제 2: 반복문으로 경고음 여러 번 재생하기

이번에는 변수에 주파수와 재생 시간을 미리 저장한 뒤, for 반복문을 활용해 경고음을 연속으로 여러 번 재생하는 방법을 살펴보겠습니다.

using System;

public class Demo {
   public static void Main(string[] args){
      int freq = 1500;
      int duration = 1000;

      Console.WriteLine("Displaying standard output stream...");
      Console.WriteLine("Standard Output Stream = " + Console.Out);
      Console.WriteLine("Beep sound through Console");
      Console.Beep();
      Console.WriteLine("Beep sound through Console with frequency 1000 hertz and duration 500 milliseconds");
      Console.Beep(1000, 500);
      Console.WriteLine("Playing Beep sound 10 times...");
      for (int i = 1; i < 10; i++)
         Console.Beep(freq, duration);
   }
}

출력 결과

실행하면 기본 경고음과 지정된 경고음이 차례로 재생되고, 이후 주파수 1500Hz·재생 시간 1000밀리초의 경고음이 반복 재생됩니다.

Displaying standard output stream...
Standard Output Stream = System.IO.TextWriter+SyncTextWriter
Beep sound through Console
Beep sound through Console with frequency 1000 hertz and duration 500 milliseconds
Playing Beep sound 10 times...

참고: Console.Beep() 메서드는 Windows 환경에서 정상적으로 작동합니다. 일부 운영체제, 원격 데스크톱 환경 또는 특정 IDE에서는 시스템 사운드 설정에 따라 소리가 재생되지 않을 수 있으니 주의하세요.