最近在学习C#的使用,随手写了几个小方法方便在写的时候不用每次开套件就整个新的。
Class: Output
using System;
namespace Utils
{
public class Output
{
/**
* 输出文字,输入任意内容都会被转换为字符串。
*
*/
public static void println(object message)
{
Console.WriteLine(message.ToString());
}
/**
* 输出日志,仅接受字符串。
*/
public static void Log(string message)
{
Console.WriteLine("[{0} {1}]: {2}", getTime(), "Info", message);
}
public static void Log(GetLevel level, string message)
{
Console.WriteLine("[{0} {1}]: {2}", getTime(), level.ToString(), message);
}
public static void Log(string level, string message)
{
Console.WriteLine("[{0} {1}]: {2}", getTime(), level, message);
}
// Tool data.
private static string getTime()
{
return DateTime.Now.ToString();
}
public enum GetLevel
{
Debug,
Info,
Warn,
Error
}
}
}
Class: Util
using System.Collections.Generic;
using System.Text;
namespace Utils
{
class Util
{
/**
* 使用值从列表中取出键。
*/
public static object GetKeyByValue<T>(Dictionary<T, T> dict, T value)
{
foreach (var i in dict)
{
if (i.Value.ToString() == value.ToString())
{
return i.Key;
}
}
return null;
}
/**
* 将字符串转为小写
*
* @Return 小写字符串(“teststring”)
*/
public static string ToUp(string str)
{
return str.ToUpper();
}
/**
* 将字符串转为大写
*
* @Return 大写字符串(“TESTSTRING”)
*/
public static string ToDown(string str)
{
return str.ToLower();
}
/**
* 将字符串转为蛇形
*
* @Return 蛇形字符串(“test_string”)
*/
public static string ToSnack(string str)
{
StringBuilder builder = new StringBuilder();
string getStr = str;
bool previousUpper = false;
for (var i = 0; i < getStr.Length; i++)
{
var c = getStr[i];
if (char.IsUpper(c))
{
if (i > 0 && !previousUpper)
{
builder.Append("_");
}
builder.Append(char.ToLowerInvariant(c));
previousUpper = true;
}
else
{
builder.Append(c);
previousUpper = false;
}
}
return builder.ToString();
}
}
}