first commit
This commit is contained in:
@@ -0,0 +1,66 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Globalization;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
|
||||
namespace JSMachine.WMS.Infrastructure.Helper
|
||||
{
|
||||
/// <summary>
|
||||
/// 值转换服务类
|
||||
/// </summary>
|
||||
public static class ValueConvertHelper
|
||||
{
|
||||
/// <summary>
|
||||
/// 将一个int32类型转换为一个ushort数组,高位在前面
|
||||
/// </summary>
|
||||
/// <returns></returns>
|
||||
public static ushort[] IntToUshorts(int value)
|
||||
{
|
||||
string str = Convert.ToString(value, 2).PadLeft(32, '0');
|
||||
string high = str.Substring(0, 16);
|
||||
string low = str.Substring(16);
|
||||
|
||||
return new ushort[2] { Convert.ToUInt16(high, 2), Convert.ToUInt16(low, 2) };
|
||||
}
|
||||
|
||||
public static short[] IntToShorts(int value)
|
||||
{
|
||||
string str = Convert.ToString(value, 2).PadLeft(32, '0');
|
||||
string high = str.Substring(0, 16);
|
||||
string low = str.Substring(16);
|
||||
|
||||
return new short[2] { Convert.ToInt16(high, 2), Convert.ToInt16(low, 2) };
|
||||
}
|
||||
/// <summary>
|
||||
/// 将两个ushort转换为一个int,高位在前
|
||||
/// </summary>
|
||||
/// <param name="values"></param>
|
||||
/// <returns></returns>
|
||||
public static int UshortsToInt(ushort[] values)
|
||||
{
|
||||
return values.First() << 16 | values.Last();
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 将两个short转换为一个int,高位在前
|
||||
/// </summary>
|
||||
/// <param name="values"></param>
|
||||
/// <returns></returns>
|
||||
public static int ShortsToInt(short[] values)
|
||||
{
|
||||
return values.First() << 16 | values.Last();
|
||||
}
|
||||
/// <summary>
|
||||
/// 调整值的后一位强制转换成无符号
|
||||
/// </summary>
|
||||
/// <param name="values"></param>
|
||||
/// <returns></returns>
|
||||
public static int adjShortsToInt(short[] values)
|
||||
{
|
||||
ushort value = (ushort)(values.Last());
|
||||
return values.First() << 16 | value;
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user