完美者(wmzhe.com)网站以软件下载为基础,改版后的网站对功能性板块进行扩充,以期能够解决用户在软件使用过程中遇见的所有问题。网站新增了“软件百科”、“锦囊妙技”等频道,可以更好地对用户的软件使用全周期进行更加专业地服务。
字符串转换工具一个很好用的绿色版的字符串转换工具,比较经典的个工具,可以转换10进制16进制字符串等;首先选择进制,然后再输入需要转换的字符串,点击转换,就可以了。
功能介绍
1、字符串转10进制
2、字符串转16进制
3、字符串转Unicode
4、字符串转Delphi DFM字符串
5、16进制转8进制
6、16进制转10进制
7、10进制转2进制
8、10进制转8进制
9、10进制转16进制
10、16进制转2进制
"锦囊妙技"栏目是聚合全网软件使用的技巧或者软件使用过程中各种问题的解答类文章,栏目设立伊始,小编欢迎各路软件大神朋友们踊跃投稿,在完美者平台分享大家的独门技巧。
本站文章素材来源于网络,大部分文章作者名称佚失,为了更利于用户阅读和使用,根据需要进行了重新排版和部分改编,本站收录文章只是以帮助用户解决实际问题为目的,如有版权问题请联系小编修改或删除,谢谢合作。
软件大小:640.83 KB
我校的名单原来放在word里,选定学生的姓名,如下图: 再建一个电子表格,第一列命名为姓名,将从word中复制的名单粘贴到这一列,如下图: 将word中其余的名单也粘贴过来,接在第一次粘贴的名单的下面,然后全部选定这些名单,复制一下,打开“字符区码转换器”,不用对它的设置作更改,将刚复制的名单粘贴到左面的空白区里,如下图: 点击工具栏中的“转换”按钮,将出现下面的对话框: 点击开始按钮,区位码在右面的空白区中生成,另外还有一些注册信息,不用理它,选中我们想要的部分,如下图: 复制它们,然后到电子表格中代码列中粘贴,注意第一行对准第一个学生的名单就行了,如下图: OK了,这个班的区位码就搞定了。用同样的方法继续简剩下的几个班。如果全校都合在一起,那就更快了,一次就可以完成了。我是用的这个方法, 如果大家有更好的办法,希望多多指教。
直接用这个: import java.io.FileReader; import java.io.BufferedReader; import java.io.ByteArrayOutputStream; public class Decode{ public static void main(String[] args) { try { FileReader fr=new FileReader(args[0]); BufferedReader br=new BufferedReader(fr); String Line=br.readLine(); while(Line!=null){ System.out.println(Decoding(Line)); Line=br.readLine(); } br.close(); fr.close(); } catch (Exception e) { e.printStackTrace(); } } public final static String Decoding(String str) { if (str == null) { return ""; } try { StringBuffer sb = new StringBuffer(str); for (int i = 0; i < sb.length(); i++) { if (sb.charAt(i) == '\n' && sb.charAt(i - 1) == '=') { sb.deleteCharAt(i - 1); } } str = sb.toString(); byte[] bytes = str.getBytes("US-ASCII"); for (int i = 0; i < bytes.length; i++) { byte b = bytes[i]; if (b != 95) { bytes[i] = b; } else { bytes[i] = 32; } } if (bytes == null) { return ""; } ByteArrayOutputStream buffer = new ByteArrayOutputStream(); for (int i = 0; i < bytes.length; i++) { int b = bytes[i]; if (b == '=') { try { int u = Character.digit((char) bytes[++i], 16); int l = Character.digit((char) bytes[++i], 16); if (u == -1 || l == -1) { continue; } buffer.write((char) ((u << 4) + l)); } catch (ArrayIndexOutOfBoundsException e) { e.printStackTrace(); } } else { buffer.write(b); } } return new String(buffer.toByteArray(), "UTF-8"); } catch (Exception e) { e.printStackTrace(); return ""; } } } 保存为Decode.java,1.txt就是你的vcf
使用反编译软件Reflector打开System.Web.Mvc(直接在VS2008下右键选择Reflector打开就行了,默认位置在C:\Program Files\Microsoft ASP.NET\ASP.NET MVC 1.0\Assemblies\System.Web.Mvc.dll) 顺着asp.net mvc的访问路径,一路到了下来。发现原来还有一个这么简单的方法,这里直接把我简单的DEMO列出来,相信大家都很容易看明白了: using System; using System.ComponentModel; namespace YcoeXu.Common { public static class StringExtensions { /// <summary> /// 将字符串格式化成指定的数据类型 /// </summary> /// <param name="str"></param> /// <param name="type"></param> /// <returns></returns> public static Object Format(this String str, Type type) { if (String.IsNullOrEmpty(str)) return null; if (type == null) return str; if (type.IsArray) { Type elementType = type.GetElementType(); String[] strs = str.Split(new char[] { ';' }); Array array = Array.CreateInstance(elementType, strs.Length); for (int i = 0, c = strs.Length; i < c; ++i) { array.SetValue(ConvertSimpleType(strs[i], elementType), i); } return array; } return ConvertSimpleType(str,type); } private static object ConvertSimpleType(object value, Type destinationType) { object returnValue; if ((value == null) || destinationType.IsInstanceOfType(value)) { return value; } string str = value as string; if ((str != null) && (str.Length == 0)) { return null; } TypeConverter converter = TypeDescriptor.GetConverter(destinationType); bool flag = converter.CanConvertFrom(value.GetType()); if (!flag) { converter = TypeDescriptor.GetConverter(value.GetType()); } if (!flag && !converter.CanConvertTo(destinationType)) { throw new InvalidOperationException("无法转换成类型:" + value.ToString() + "==>" + destinationType); } try { returnValue = flag ? converter.ConvertFrom(null, null, value) : converter.ConvertTo(null, null, value, destinationType); } catch (Exception e) { throw new InvalidOperationException("类型转换出错:" + value.ToString() + "==>" + destinationType, e); } return returnValue; } } } DEMO: 在配置文件里自定义配置: 1. 在<configSections></configSections>节点内添加节点: <section name="XuConfig" type="System.Configuration.NameValueSectionHandler" /> 2. 写配置看起来会是这样的: <configSections> //..其它代码 <section name="XuConfig" type="System.Configuration.NameValueSectionHandler" /> </configSections> <XuConfig> <add key="ID" value="123"/> <add key="Name" value="YcoeXu"/> <add key="Roles" value="Member,Admin"/> </XuConfig> 写个类自动加载 using System; using System.Reflection; using System.Collections.Specialized; using System.Configuration; using YcoeXu.Common; namespace YcoeXu.Test { public class XuConfig { private XuConfig() { } private static XuConfig config = null; private static XuConfig Instance { get { if (config == null) { config = new XuConfig(); Type type = typeof(XuConfig); //从配置文件里读取XuConfig节点 NameValueCollection xuConfig = (NameValueCollection)ConfigurationManager.GetSection("XuConfig"); //根据Key匹配对应的属性 foreach (String key in xuConfig.AllKeys) { PropertyInfo pi = type.GetProperty(key); if (pi == null || String.IsNullOrEmpty(xuConfig[key])) continue; //自动转换类型并注入值 pi.SetValue(config, xuConfig[key].Format(pi.PropertyType), null); } } return config; } } public int ID { set; get; } public String Name { set; get; } public Role[] Roles { set; get; } public void Test() { Console.WriteLine(XuConfig.Instance.Name); Console.WriteLine(XuConfig.Instance.ID); foreach (Role r in XuConfig.Instance.Roles) { Console.WriteLine(r.ToString()); } } } public enum Role { Guest, Member, Manager, Admin } } 注意了,一定要添加一个引用:System.Configuration 这里对String进行了一些扩展,使它可以直接当成String对象的方法访问了
,0x是十六进制的象征,后面从零到九都是一样的,十用a十一用b以此推倒十五。对于文字的转换,得查wscii(貌似是这个)表格,