技术探索
  • 在Android中使用多线程更新UI的完整实例

    2015-05-01
    272
    Android开发
    在实际设计中,我们可以把耗时的操作用多线程进行处理,这样在该操作完成之前,不会阻塞UI主线程的显示。并且在新版本的Android中,象HttpGet等网络操作必须放在子线程中进行,否则会出错。下面的代码是一个完整的多线程实例供参考:@OverrideprotectedvoidonCreate(BundlesavedInstanceState){super.onCreate(savedInstanceState);setContentView(R.layout.activity_main);//activity_main是主界面布局//多线程操作从下面开始,其中R.id.textView1是主界面中的一个TextView:finalHandlerhandler=newHandler(){@OverridepublicvoidhandleMessage(Messagemsg){finalTex
  • 在Android中采XmlPullParser方式解析Xml节点

    2015-04-25
    808
    Android开发
    本文介绍在Android中采用XmlPullParser方式解析Xml节点,并将解析到的名称与值保存在Map集合中。Xml文档结构:<root><result>1</result><item><id>1</id><name>tiger</name></item></root>XmlPullParser读取:publicMapReadXmlData(){Stringxmldoc="";//上面的Xml文档,以字符串表示Map<String,String>m=newHashMap<String,String>();XmlPullParserFactoryfactory;try{factory=XmlPullParserFactory
  • 在Android中使用HttpPost提交数据方法

    2015-04-24
    459
    Android开发
    本例介绍在Android中利用HttpPost向服务器提交数据,并获取结果(字符串形式)的方法。服务器上获取提交来的参数由该服务器平台所使用的语言决定,如ASP.NET中可使用Request.Form["name"]获取,PHP中使用$_post["name"]。publicStringGetRemoteData(){try{List<NameValuePair>params=newArrayList<NameValuePair>();params.add(newBasicNameValuePair("name","tiger"));params.add(newBasicNameValuePair("age","99"));HttpPostpost
  • Android中的MD5加密方法实现

    2015-04-24
    661
    Android开发
    本文介绍在Android 平台进行 MD5 加密的方法,经测试与 C# 平台中加密结果一致。publicStringMD5(Stringorigin){try{MessageDigestmd=MessageDigest.getInstance("MD5");md.update(origin.getBytes("UTF-8"));byte[]b=md.digest();inti=0;StringBufferbuf=newStringBuffer();for(intoffset=0;offset<b.length;offset++){i=b[offset];if(i<0)i+=256;if(i<16)buf.append("0");buf.append(Integer.toHexString(i));}returnb
  • 在Android中使用GZIPOutputStream压缩数据

    2015-04-24
    1493
    Android开发
    本文介绍在Android中使用GZIPOutputStream进行压缩的方法,通过测试,在c#中用GZipStream可解压缩本方法压缩后的数据。参数 normalString 为压缩前的字符串,输出为 Base64编码的字符串。publicStringCompress(StringnormalString)throwsIOException{byte[]t=normalString.getBytes("UTF-8");byte[]result;ByteArrayInputStreamin=newByteArrayInputStream(t);ByteArrayOutputStreamout=newByteArrayOutputStream();GZIPOutputStreamgzip=newGZIPOutputStream(out);try{byte[]buffer=
  • 在Android中使用GZIPInputStream解压缩数据

    2015-04-24
    1185
    Android开发
    本文介绍在Android中使用GZIPInputStream进行解压缩的方法,通过测试,本方法同样适用于通过c#中的GZipStream压缩后的数据解压。参数 base64String 为压缩过的且转换为 Base64 编码后的字符串,原始字符串参用的是 UTF-8 编码。publicStringDecompress(Stringbase64String)throwsIOException{byte[]t=Base64.decode(base64String,Base64.DEFAULT);ByteArrayOutputStreamout=newByteArrayOutputStream();ByteArrayInputStreamin=newByteArrayInputStream(t);GZIPInputStreamgzip=newGZIPInputStream(in);try{byt
  • C#中基于DeflateStream的压缩与解压缩实现方法

    2015-04-23
    620
    C#语言
    利用本文的方法,可以对任意对象进行压缩与解压缩。usingSystem.IO;usingSystem.IO.Compression;///<summary>///将数据压缩,并输出为Base64String格式。///</summary>///<paramname="data">原始数据。</param>privatestringCompress(byte[]data){using(MemoryStreamms=newMemoryStream(data)){ms.Position=0;using(MemoryStreamms2=newMemoryStream()){using(DeflateStreamdf=newDeflateStream(ms2,CompressionMode.Compress)){byte[]buff
  • MSSQL出故障后无法启动如何重建系统数据库?

    2015-01-02
    683
    MSSQL数据库
    当mssql系统数据库出现问题(如master),导致无法启动时,可以使用以下命令重建系统数据库。重建完成后再重新创建数据库用户、附加或恢复用户的业务数据库。C:\ProgramFiles\MicrosoftSQLServer\100\SetupBootstrap\Release\setup.exe/q/action=rebuilddatabase/instancename=mssqlserver/sqlsysadminaccounts=admin/sapwd=sa参数说明:1)以恢复mssql2008为例2)instancename指定实例名称,如果是默认实例,填写为mssqlserver(本例)3)添加一个windows系统管理员账号,本例中为admin4)设置sa的密码,本例为sa5)执行完成后会返回到命令提示符6)执行完后别忘记启动mssql服务,然后再进行其他工作