пятница, 17 апреля 2020 г.

C#, Strings

using System;
using System.Globalization;
using System.Text;

namespace ConsoleApp3
{
    internal class Program
    {
        public static void Main(string[] args)
        {
            var text = "I am a text";

            Console.WriteLine("String length: " + text.Length);
            Console.WriteLine("Uppercase: " + text.ToUpper());
            Console.WriteLine("Does it have \"am\"? " + (text.Contains("am") ? "yes" : "no"));
            Console.WriteLine("range: " + text[2..4]);
            Console.WriteLine("   trimmed".TrimStart());

            var words = text.Split(" ");
            foreach (var word in words)
            {
                Console.WriteLine(word);
            }

            foreach (var ch in text)
            {
                Console.WriteLine(ch + " - " + (int) ch);
            }

            int x = int.Parse("42");
            int y = Convert.ToInt32("42");
            if (int.TryParse("42", out var z))
            {
                Console.WriteLine("s2i: " + z);
            }

            CultureInfo usa = new CultureInfo("en-US");

            Console.WriteLine("usa format: " + 42.ToString("N2", usa));
            Console.WriteLine($"local format: {42:N2}");

            var fmt = String.Format("{0:N2} - {1} - {2}", x, y, z);
            Console.WriteLine(fmt);

            StringBuilder str = new StringBuilder(/* "x" */);
            str.Append("a");
            str.Insert(0, "b");
            str.Remove(0, 1);
            Console.WriteLine(str);
            Console.WriteLine("equal to 'a': " + str.Equals("a"));
            str.Clear();
            Console.WriteLine(str.Capacity);
        }
    }
}

четверг, 16 апреля 2020 г.

C#, Date, Time and Environment

using System;
using System.Diagnostics;

namespace ConsoleApp3
{
    internal class Program
    {
        public static void Main(string[] args)
        {
            var sw = new Stopwatch();
            sw.Start();

            var now = DateTime.Now;
            Console.WriteLine("Now is " + now);

            var today = DateTime.Today;
            Console.WriteLine("Today is " + today.ToLongDateString());
            Console.WriteLine("Tomorrow is " + today.AddDays(1).ToShortDateString());

            Console.WriteLine("Date: " + now.Date);
            Console.WriteLine("Day: " + now.Day);
            Console.WriteLine("Month: " + now.Month);
            Console.WriteLine("Year: " + now.Year);
            Console.WriteLine("Hour: " + now.Hour);
            Console.WriteLine("Minute: " + now.Minute);
            Console.WriteLine("Second: " + now.Second);

            Console.WriteLine("PC Name: " + Environment.MachineName);
            Console.WriteLine("Num of cores: " + Environment.ProcessorCount);
            Console.WriteLine("User: " + Environment.UserName);
            Console.WriteLine("Env var 'OS': " + Environment.GetEnvironmentVariable("OS"));
            Console.WriteLine("Path to MyDoc: " + Environment.GetFolderPath(Environment.SpecialFolder.MyDocuments));

            sw.Stop();
            //Console.WriteLine("Elapsed time: " + sw.Elapsed.ToString("s\\.ffff"));
            Console.WriteLine($"Speed: {sw.Elapsed:s\\.ffff}");
            sw.Reset();

            var rnd = new Random(DateTime.Now.Millisecond);
            for (var i = 0; i < 3; i++)
            {
                Console.WriteLine("1d6: " + rnd.Next(1, 6 + 1));
            }
        }
    }
}