精华内容
下载资源
问答
  • android手机与asp服务器传输数据源码

    热门讨论 2014-06-17 11:39:09
    1.服务器端为ASP+Access2003+IIS 2.移动端为Android 3.移动端将内容提交Request给服务器端 4.代码完整可以运行
  • 下面说一下Android如何通过asp.net向服务器提交数据,我们此问题分成两块,第一块是asp.net,第二块是Android app。  asp.net:  1.首先Visual Studio打开或新建一个asp.net网站  2.在解决方案资源管理器窗口中...

    下面说一下Android如何通过asp.net向服务器提交数据,我们此问题分成两块,第一块是asp.net,第二块是Android app。
      asp.net:
      1.首先Visual Studio打开或新建一个asp.net网站
       2.在解决方案资源管理器窗口中的网站节点右键添加新项,选择Web服务(图1),取名,这样就生成了一个asmx页面,可以看到系统自动生成了一个HelloWorld的字符串方法,将asmx页面设为起始页,运行,可以看到(图2)有一个HelloWorld链接,点击就可以看到它的输出内容。
      3.关闭asmx页面,我们自己写一个简单的方法,比如输出一个两数相加的方法。再次运行,可以看到asmx页面多了一个Add方法,点击,输入相应参数,就得到了两数相加的结果。

    [WebMethod]
        public int Add(int a, int b)
        {
            return a + b;
        }
    

    Android app
      1.用Android studio或eclipse打开或新建一个项目。
      2.在AndroidManifest.xml添加网络权限。权限如下

      <!-- 查看网络状态 -->
        <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
        <uses-permission android:name="android.permission.ACCESS_WIFI_STATE" /> 
        <!-- 互联网 -->
        <uses-permission android:name="android.permission.INTERNET" />

    3.在布局文件中添加一个TextView用于显示处理结果(代码略)。
      4.引入一个ksoap2的第三方jar包。一会我们需要通过它来实现对接刚才建立的asp.net网站(Web Api).
      5.建立一个”种子类“,代码如下

    public class SoapObject_Property
    {
        public String PropertyName="";
        public Object PropertyValue=null;
    
        public SoapObject_Property()
        {
            this.PropertyName="";
            this.PropertyValue=null;
        }
    
    
    }
    

    6.建立一个”Util类“,代码如下:

    public class AsmxUtil
    {
        public String url="";
        private boolean issuccess=true;
    
        public AsmxUtil(String url)
        {
            this.url=url;
    
        }
    
        public AsmxUtil()
        {
            
        }
    
        public String GetasmxConent(String methodname, ArrayList<SoapObject_Property> ArrSOOP)
        {
            final String servicens="http://tempuri.org/";
            final String soapaction="http://tempuri.org/"+methodname;
            String outresult="";
            //http://localhost/swaddle/SwaddleVideoService.asmx
            //创建HttpTransportSE传输对象,该对象用于调用Web Service操作
            final HttpTransportSE ht = new HttpTransportSE(url);
            ht.debug = true;
            //使用SOAP1.1协议创建Envelop对象。从名称上来看,SoapSerializationEnvelope代表一个SOAP消息封包;但ksoap2-android项目对
            //SoapSerializationEnvelope的处理比较特殊,它是HttpTransportSE调用Web Service时信息的载体--客户端需要传入的参数,需要通过
            //SoapSerializationEnvelope对象的bodyOut属性传给服务器;服务器响应生成的SOAP消息也通过该对象的bodyIn属性来获取。
            final SoapSerializationEnvelope envelope = new SoapSerializationEnvelope(SoapEnvelope.VER11);
            //实例化SoapObject对象,创建该对象时需要传入所要调用的Web Service的命名空间、Web Service方法名
            SoapObject soapObject = new SoapObject(servicens, methodname);
            //---
            if (ArrSOOP!=null || ArrSOOP.size()>0)
            {
                for (int i=0;i<ArrSOOP.size();i++)
                {
                    SoapObject_Property SOOPItem=ArrSOOP.get(i);
                    String PropertyName=SOOPItem.PropertyName;
                    Object PropertyValue=(String.valueOf(SOOPItem.PropertyValue)) ;
                    soapObject.addProperty(PropertyName, PropertyValue);
                }
            }
    //        soapObject.addProperty("a", 10);
    //        soapObject.addProperty("b", 12);
    
            //---
            //对dotnet webservice协议的支持,如果dotnet的webservice
            envelope.dotNet = true;
            //调用SoapSerializationEnvelope的setOutputSoapObject()方法,或者直接对bodyOut属性赋值,将前两步创建的SoapObject对象设为
            //SoapSerializationEnvelope的付出SOAP消息体
            envelope.bodyOut = soapObject;
    
            try
            {
                //调用WebService,调用对象的call()方法,并以SoapSerializationEnvelope作为参数调用远程Web Service
                ht.call(soapaction, envelope);
                if(envelope.getResponse() != null)
                {
                    //获取服务器响应返回的SOAP消息,调用完成后,访问SoapSerializationEnvelope对象的bodyIn属性,该属性返回一个
                    //SoapObject对象,该对象就代表了Web Service的返回消息。解析该SoapObject对象,即可获取调用Web Service的返回值
                    SoapObject so = (SoapObject) envelope.bodyIn;
                    //接下来就是从SoapObject对象中解析响应数据的过程了
                    outresult = so.getPropertyAsString(0);
                    issuccess=true;
    
                }
                else
                {
                    outresult="";
                    issuccess=false;
                }
            }
            catch (Exception e) {
                outresult=e.toString();
                issuccess=false;
                e.printStackTrace();
            }
    
    
            return  outresult;
        }
    
        public boolean IsSuccess()
        {
            return  issuccess;
        }
    }
    

    5.在布局文件对应Activity类中添加一个广播接收类一个线程类,早在安卓2.3时,谷歌就默认在主线程中不能直接调用诸如网络访问等耗时操作(会引发异常),尽管可以通过以下方法,来强制"关闭限制",但这并不是推荐的方法,规范的方法就是通过线程来操作。
    if (android.os.Build.VERSION.SDK_INT > 9) {
    StrictMode.ThreadPolicy policy = new StrictMode.ThreadPolicy.Builder().permitAll().build();
    StrictMode.setThreadPolicy(policy);
    }
      “规范“代码如下。这里有几个需要注意的地方。一是PropertyName必须与asp.net中对应的参数名大小写一致。二是,我们在调试时通常程序与服务器在同一电脑上,也是就是本地,如果是windows程序或上面的asp.net网站,地址是localhost或127.0.0.1,但到了AS或eclipse自带AVD模拟器,localhost、127.0.0.1两个地址会被认为是模拟器本身,所以这里的ip段统一要用10.0.2.2来替代,三是,我添加了等待对话框,因为在耗时操作时,我们需要告知用户等待,并且等待时间不允许再新进行新的操作直至耗时操作完成。关于耗时对话框可以查看我的另一篇博文。https://blog.csdn.net/wstcl/article/details/120403362?spm=1001.2014.3001.5501

    public class Page2Activity extends AppCompatActivity {
    
        private TextView tv;
        private final String tipfilter="tip";
        private final String donefilter="done";
        private TipBroadcast tipBroadcast;
        private BroadCastDone broadcastdone;
        private WaitDialog waitDialog;
        @Override
        protected void onCreate(Bundle savedInstanceState) {
            super.onCreate(savedInstanceState);
            setContentView(R.layout.activity_page2);
            tv=findViewById(R.id.TV);
    //
            waitDialog=new WaitDialog(this);
            waitDialog.show();
            new ConnAspNetThread(this).start();
        }
    
        private void registerdonebroadcast()
        {
            broadcastdone = new BroadCastDone();  //即时广播
            // 创建一个意图过滤器,只处理指定事件来源的广播
            IntentFilter filter = new IntentFilter(donefilter);
            // 注册广播接收器,注册之后才能正常接收广播
            LocalBroadcastManager.getInstance(this).registerReceiver(broadcastdone, filter);
        }
    
        private void SendTipBroadcast(String tip,int op)
        {
            Intent intent = new Intent(tipfilter);
            intent.putExtra("Tip", tip);
            intent.putExtra("Op",op);
    
            // 通过本地的广播管理器来发送广播
    
            LocalBroadcastManager.getInstance(this).sendBroadcast(intent);//发送广播
        }
    
        private class ConnAspNetThread extends Thread
        {
    
            private Context context;
            public ConnAspNetThread(Context context)
            {
                this.context=context;
            }
            @Override
            public  void run()
            {
                registerdonebroadcast();
                ArrayList<SoapObject_Property> ArrSOOP=new ArrayList<SoapObject_Property>();
                SoapObject_Property SOOPa=new SoapObject_Property();
                SOOPa.PropertyName="a";
                SOOPa.PropertyValue=100;
    
                SoapObject_Property SOOPb=new SoapObject_Property();
                SOOPb.PropertyName="b";
                SOOPb.PropertyValue=44;
    
                ArrSOOP.add(SOOPa);
                ArrSOOP.add(SOOPb);
    
                try
                {
                    AsmxUtil asmxUtil=new AsmxUtil("http://10.0.2.2:32262/WebSite2/TestWS.asmx");
                    String s=asmxUtil.GetasmxConent("Add",ArrSOOP);
    
                    if (asmxUtil.IsSuccess())
                    {
                        SendTipBroadcast(s,1);
    
                    }
                    else
                    {
                        SendTipBroadcast(s,0);
    
                    }
                    //Thread.sleep(5000);
                }
    
                catch (Exception e)
                {
                    SendTipBroadcast(e.toString(),0);
                }
                Intent intent = new Intent(donefilter);
    
    
                // 通过本地的广播管理器来发送广播
    
                LocalBroadcastManager.getInstance(context).sendBroadcast(intent);//发送广播
            }
    
    
        }
    
        @Override
        public void onStart() {
            super.onStart();
    
            tipBroadcast = new TipBroadcast(this);  //即时广播
            // 创建一个意图过滤器,只处理指定事件来源的广播
            IntentFilter filter = new IntentFilter(tipfilter);
            // 注册广播接收器,注册之后才能正常接收广播
            LocalBroadcastManager.getInstance(this).registerReceiver(tipBroadcast, filter);
    
        }
    
        @Override
        public void onStop() {
            super.onStop();
            // 注销广播接收器,注销之后就不再接收广播
            LocalBroadcastManager.getInstance(this).unregisterReceiver(tipBroadcast);
    
        }
    
        private class TipBroadcast extends BroadcastReceiver  //定义一个提示广播
        {
    
            Context context;
            public TipBroadcast(Context context)
            {
                this.context=context;
            }
            @Override
            public void onReceive(Context context, Intent intent)
            {
                if (intent != null) {
    
    
                    String tip=intent.getStringExtra("Tip");//解包
                    int op=intent.getIntExtra("Op",0);
    
    
                    switch (op)
                    {
                        case 0:
                            tv.setText(tip);
                            Toast.makeText(context,tip,Toast.LENGTH_SHORT).show();
    
                            break;
                        case 1:
                            tv.setText(tip);
    
                            break;
                    }
    
                    //Toast.makeText不能写在线程内,所以只能用广播
                }
            }
        }
        private class BroadCastDone extends BroadcastReceiver
        {
    
            @Override
            public void onReceive(Context context, Intent intent)
            {
                if (intent != null)
                {
                    waitDialog.dismiss(); //关闭对话框
    
                }
            }
        }
    }
    

    在这里插入图片描述
    在这里插入图片描述

    展开全文
  • 刚开始路走的都很顺,但是走到通过Android客户端上传图片到Asp.Net 服务器的时候出现很大的问题,图片是上传了,就是显示不出来,用照片查看器查看的时候显示:‘没有预览’,用画图软件打开的时候显示‘无效的位图...

    最近在做一个手机app联合系统管理做的应用程序,管理程序管理数据的发布和增删改查,手机app负责显示和操作业务逻辑这么一个功能。

    刚开始路走的都很顺,但是走到通过Android客户端上传图片到Asp.Net 服务器的时候出现很大的问题,图片是上传了,就是显示不出来,用照片查看器查看的时候显示:‘没有预览’,用画图软件打开的时候显示‘无效的位图文件或不支持文件的格式’!!!

    a28244645cb558dcd4be4aa4ef393261.png

    844869cc770a247906eb2a7c36b883da.png

    大家想,肯定你的代码写得有问题,好吧,你们看看我的代码是什么问题吧:

    Streamsr = context.Request.InputStream;

    byte[] buffer = new byte[4096];

    intbytesRead = 0;

    //将当前数据流写入服务器端文件夹ClientBin下const stringsavePath = "/RiskNoticeImg"; //目标图片路径stringdirPath = context.Server.MapPath(savePath);

    stringpath = dirPath + @"\"+ picName;

    using(FileStreamfs = File.Create(filePath, 4096))

    {

    while((bytesRead = sr.Read(buffer, 0, buffer.Length)) > 0)

    {

    //向文件中写信息fs.Write(buffer, 0, bytesRead);

    }

    }

    看看,你们觉得有什么问题吗?我是看不出来,搞了两天,人都快崩溃了,然后漫无目的的在网上找答案,有的说要Base64编码才行,但是还是不行,也不是说不行,是我没有试,最恶心的是这篇帖子:点击这里查看,为什么这么说呢,因为明明跟我是一样的问题,明明他也解决了,但是就是不告诉你怎么解决的,无奈之下求助项目经理,经过他电脑般的大脑高速运转就解决问题了,接下来就是见证奇迹的时刻:

    context.Request.Files[0].SaveAs(filePath);

    是的,就这一行代码就搞定了,如果你测试这行代码搞不定,那你可以根据它的Files.Count来循环输出它的文件像这样:context.Request.Files[i].SaveAs(filePath);这样就解决上传图片显示不了的问题了,希望对有些人有所帮助吧^_^,

    最后想讲下,他是通过这个文件得到的灵感:

    package main;

    import java.io.File;

    import java.io.FileOutputStream;

    import java.io.IOException;

    import java.io.InputStream;

    import java.io.PrintWriter;

    import java.util.List;

    import javax.servlet.ServletException;

    import javax.servlet.http.HttpServlet;

    import javax.servlet.http.HttpServletRequest;

    import javax.servlet.http.HttpServletResponse;

    import org.apache.commons.fileupload.FileItem;

    import org.apache.commons.fileupload.FileItemFactory;

    import org.apache.commons.fileupload.disk.DiskFileItemFactory;

    import org.apache.commons.fileupload.servlet.ServletFileUpload;

    public class hello extends HttpServlet{

    protected void service(HttpServletRequest request,

    HttpServletResponse response) throws ServletException, IOException

    {

    try

    {

    request.setCharacterEncoding("UTF-8"); // 设置处理请求参数的编码格式

    response.setContentType("text/html;charset=UTF-8"); // 设置Content-Type字段值

    PrintWriter out = response.getWriter();

    // 下面的代码开始使用Commons-UploadFile组件处理上传的文件数据

    FileItemFactory factory = new DiskFileItemFactory(); // 建立FileItemFactory对象

    ServletFileUpload upload = new ServletFileUpload(factory);

    // 分析请求,并得到上传文件的FileItem对象

    List items = upload.parseRequest(request);

    // 从web.xml文件中的参数中得到上传文件的路径

    String uploadPath = "d:\\upload\\";

    File file = new File(uploadPath);

    if (!file.exists())

    {

    file.mkdir();

    }

    String filename = ""; // 上传文件保存到服务器的文件名

    InputStream is = null; // 当前上传文件的InputStream对象

    // 循环处理上传文件

    for (FileItem item : items)

    {

    // 处理普通的表单域

    if (item.isFormField())

    {

    if (item.getFieldName().equals("filename"))

    {

    // 如果新文件不为空,将其保存在filename中

    if (!item.getString().equals(""))

    filename = item.getString("UTF-8");

    }

    }

    // 处理上传文件

    else if (item.getName() != null && !item.getName().equals(""))

    {

    // 从客户端发送过来的上传文件路径中截取文件名

    filename = item.getName().substring(

    item.getName().lastIndexOf("\\") + 1);

    is = item.getInputStream(); // 得到上传文件的InputStream对象

    }

    }

    // 将路径和上传文件名组合成完整的服务端路径

    filename = uploadPath + filename;

    // 如果服务器已经存在和上传文件同名的文件,则输出提示信息

    if (new File(filename).exists())

    {

    new File(filename).delete();

    }

    // 开始上传文件

    if (!filename.equals(""))

    {

    // 用FileOutputStream打开服务端的上传文件

    FileOutputStream fos = new FileOutputStream(filename);

    byte[] buffer = new byte[8192]; // 每次读8K字节

    int count = 0;

    // 开始读取上传文件的字节,并将其输出到服务端的上传文件输出流中

    while ((count = is.read(buffer)) > 0)

    {

    fos.write(buffer, 0, count); // 向服务端文件写入字节流

    }

    fos.close(); // 关闭FileOutputStream对象

    is.close(); // InputStream对象

    System.out.println("文件上传成功!!!");

    out.println("文件上传成功!");

    }

    }

    catch (Exception e)

    {

    System.out.println("出现异常");

    e.printStackTrace();

    }

    }

    }

    原文:http://www.cnblogs.com/zhangwei595806165/p/4087692.html

    展开全文
  • Android客户端用Json与Asp.Net服务器交互信息 完整,可运行
  • ASP.NET-GCM 用于推送通知 GCM 在 Android 中的 ASP.NET 服务器
  • 要实现一个功能,就是需要通过发送短信进行注册,现在想把短信验证码放到服务器的session值中,当客户端收到短信并提交短信码时由asp.net服务端进行判断,那么如何共享这个session那么需要在android客户端中添加几行...

    前言

    最近因为工作的需要,要实现一个功能,就是需要通过发送短信进行注册,现在想把短信验证码放到服务器的session值中,当客户端收到短信并提交短信码时由asp.net服务端进行判断,那么如何共享这个session那么需要在android客户端中添加几行代码。

    实现方法

    如下操作。第一次数据请求时就获取这个cookie的名称并且得到这个cookie的值,这个即是sessionid的值并保存在一个静态变量中,然后在第二次请求数据的时候要将这个sessionid一并放在Cookie中发给服务器,服务器则是通过这个sessionid来识别究竟是那个客户端在请求数据的,在asp.net中这个sessionid的名字叫做ASP.NET_SessionId,当然我们可以从程序中获取。

    如下代码:

    //获取服务端的这个sessionid的名称

    /* 获取cookieStore */

    List cookies = cookieStore.getCookies();

    for(int i=0;i

    String sessionid = cookies.get(i).getName(); 从这里可以获取到这个sessionid,即为 ASP.NET_SessionId

    }

    获取sessionid的值

    for(int i=0;i

    if("ASP.NET_SessionId".equals(cookies.get(i).getName())){

    JSESSIONID = cookies.get(i).getValue(); //这个即为sessionid的值

    break;

    }

    }

    完整的httputils代码如下:

    public static DefaultHttpClient httpClient = null;

    private static String JSESSIONID; //定义一个静态的字段,保存sessionID

    public static String getRequest(String url)

    {

    httpClient = new DefaultHttpClient();

    HttpGet get = new HttpGet(url);

    try

    {

    HttpParams params = new BasicHttpParams();

    HttpConnectionParams.setConnectionTimeout(params, 10000);//设置连接超时

    HttpConnectionParams.setSoTimeout(params, 15000);//设置请求超时

    get.setParams(params);

    get.setHeader("Content-Type", "application/x-www-form-urlencoded; charset=utf-8");

    if(null != JSESSIONID){

    get.setHeader("Cookie", "ASP.NET_SessionId="+JSESSIONID);

    }

    //连接响应,通过HttpResponse获得响应信息

    HttpResponse httpResponse = httpClient.execute(get);

    if(httpResponse.getStatusLine().getStatusCode() == 200)

    {

    //取得响应字符串

    String result = EntityUtils.toString(httpResponse.getEntity());

    return result;

    }

    }

    catch (ClientProtocolException e)

    {

    return null;

    }

    catch (IOException e)

    {

    return null;

    }

    return null;

    }

    public static String postRequest(String url, HashMap rawParams) throws Exception

    {

    httpClient = new DefaultHttpClient();

    //创建POST请求方式

    HttpPost post = new HttpPost(url);

    HttpParams cparams = new BasicHttpParams();

    HttpConnectionParams.setConnectionTimeout(cparams, 10000);//设置连接超时

    HttpConnectionParams.setSoTimeout(cparams, 15000);//设置请求超时

    post.setParams(cparams);

    post.setHeader("Content-Type", "application/x-www-form-urlencoded; charset=utf-8");

    if(null != JSESSIONID){

    post.setHeader("Cookie", "ASP.NET_SessionId="+JSESSIONID);

    }

    //使用NameValuePair来保存要传递的参数,可以使用BasicNameValuePair来构造一个要被传递的参数

    //通过add添加这个参数到NameValuePair中

    ArrayList params = new ArrayList();

    for(String key : rawParams.keySet())

    {

    //添加要传传递的参数

    params.add(new BasicNameValuePair(key, rawParams.get(key)));

    }

    //post需要为参数设置字符集

    HttpEntity httpEntity = new UrlEncodedFormEntity(params, HTTP.UTF_8);

    //请求httpRequest

    post.setEntity(httpEntity);

    //发送POST请求并获取响应

    HttpResponse httpResponse = null;

    try

    {

    httpResponse = httpClient.execute(post);

    }

    catch(Exception ex)

    {

    String ee = ex.getMessage();

    }

    if(httpResponse.getStatusLine().getStatusCode() == 200)

    {

    String result = EntityUtils.toString(httpResponse.getEntity(), HTTP.UTF_8);

    /* 获取cookieStore

    ASP.NET_SessionId就是通过上面的方法获取到。

    */

    CookieStore cookieStore = httpClient.getCookieStore();

    List cookies = cookieStore.getCookies();

    for(int i=0;i

    if("ASP.NET_SessionId".equals(cookies.get(i).getName())){

    JSESSIONID = cookies.get(i).getValue();

    break;

    }

    }

    return result;

    }

    return null;

    }

    cbb3acbcd608a2024053c86defc4f963.png

    c815ce904bf75eb46435704fb5f66a45.png

    总结

    以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作能带来一定的帮助,如果有疑问大家可以留言交流,谢谢大家对脚本之家的支持。

    展开全文
  • 资源要1分,因为我也没分 ...UploadServer是asp.net如果是mvc同理,改改就行,代码很不安全,只用于测试环境,正式的要判断他传的是不是图片 Java是测试程序,测试程序通过一般android客户端都会通过
  • private string ftpServerIP = "服务器ip";//服务器ipprivate string ftpUserID = "ftp的用户名";//用户名private string ftpPassword = "ftp的密码";//密码//filename 为本地文件的绝对路径//serverDir为服务器上的...

    private string ftpServerIP = "服务器ip";//服务器ip

    private string ftpUserID = "ftp的用户名";//用户名

    private string ftpPassword = "ftp的密码";//密码

    //filename 为本地文件的绝对路径

    //serverDir为服务器上的目录

    private void Upload(string filename,string serverDir)

    {

    FileInfo fileInf = new FileInfo(filename);

    string uri = string.Format("ftp://{0}/{1}/{2}", ftpServerIP,serverDir,fileInf.Name);

    FtpWebRequest reqFTP;

    // 根据uri创建FtpWebRequest对象

    reqFTP = (FtpWebRequest)FtpWebRequest.Create(new Uri(uri));

    // ftp用户名和密码

    reqFTP.Credentials = new NetworkCredential(ftpUserID, ftpPassword);

    // 默认为true,连接不会被关闭

    // 在一个命令之后被执行

    reqFTP.KeepAlive = false;

    // 指定执行什么命令

    reqFTP.Method = WebRequestMethods.Ftp.UploadFile;

    // 指定数据传输类型

    reqFTP.UseBinary = true;

    // 上传文件时通知服务器文件的大小

    reqFTP.ContentLength = fileInf.Length;

    // 缓冲大小设置为2kb

    int buffLength = ;

    byte[] buff = new byte[buffLength];

    int contentLen;

    // 打开一个文件流 (System.IO.FileStream) 去读上传的文件

    FileStream fs = fileInf.OpenRead();

    try

    {

    // 把上传的文件写入流

    Stream strm = reqFTP.GetRequestStream();

    // 每次读文件流的2kb

    contentLen = fs.Read(buff, , buffLength);

    // 流内容没有结束

    while (contentLen != )

    {

    // 把内容从file stream 写入 upload stream

    strm.Write(buff, , contentLen);

    contentLen = fs.Read(buff, , buffLength);

    }

    // 关闭两个流

    strm.Close();

    fs.Close();

    }

    catch (Exception ex)

    {

    // MessageBox.Show(ex.Message, "Upload Error");

    Response.Write("Upload Error:" + ex.Message);

    }

    }

    调用方法

    string filename = "D:\\test.txt"; //本地文件,需要上传的文件

    string serverDir = "img"; //上传到服务器的目录,必须存在

    Upload

    (filename,serverDir);

    &period;Net 上传文件到ftp服务器和下载文件

    突然发现又很久没有写博客了,想起哎呦,还是写一篇博客记录一下吧,虽然自己还是那个渣渣猿. 最近在做上传文件的功能,上传到ftp文件服务器有利于管理上传文件. 前面的博客有写到layui如何上传文件,然 ...

    java 上传文件到 ftp 服务器

    1.  java 上传文件到 ftp 服务器 package com.taotao.common.utils; import java.io.File; import java.io.FileInpu ...

    Linux上F上传文件到FTP服务器

    Linux上上传跟Windows上上传不一样,在Windows上测试没问题,但是放到Linux服务器上跑,上传的文件中文显示乱码.解决方案: FtpUtil.java红色标记处 package cn. ...

    Linux系统下定时上传文件至FTP服务器脚本

    环境:Red Hat Enterprise Linux Server release 6.4 需求:需要将Oracle数据库的定时备份上传至FTP服务器 1.干货,用户名:oracle,数据库名称:X ...

    Android 上传文件到 FTP 服务器

    实现背景 近期接触到一个需求,就是将文件从Android系统上传到FTP服务器,虽然之前接触过FTP服务器,了解基本的使用流程,但是将此流程从使用习惯转化为代码实现还是有一定难度的.但是基本的流程还是 ...

    ftp配置 Laravel上传文件到ftp服务器

    listen=YES anonymous_enable=NO local_enable=YES write_enable=YES local_umask= dirmessage_enable=YES ...

    java使用JSCH连接FTP&lpar;Linux服务器&rpar;上传文件到Linux服务器

    首先需要用到jsch-0.1.54.jar 包: 链接: https://pan.baidu.com/s/1kZR6MqwpCYht9Pp_D6NKQw 密码: gywx 直接上代码: package ...

    Javaweb向服务器上传文件以及从服务器下载文件的方法

    先导入jar包 点击下载 commons-fileupload是Apache开发的一款专门用来处理上传的工具,它的作用就是可以从request对象中解析出,用户发送的请求参数和上传文件的流. comm ...

    FTP服务器上传工具,FTP服务器上传工具下载!

    IIS7服务器管理工具能够作为FTP的客户端,进行FTP的命令操作,可在客户端,下载,安装FTP软件! 同时,它也可以作为VNC的客户端,进行VNC的命令操作!它能够批量连接Windows和Linux ...

    随机推荐

    Nginx 配置详解

    http://www.cnblogs.com/analyzer/articles/1377684.html 本文转自:http://blog.c1gstudio.com/archives/434 推荐 ...

    python联接主流SQL的类库个人收藏

    我现在主要是用以下这个类库来分别连接oracle,postgresql,mysql,mssql的. PyMySQL,pymssql,cx_Oracle,psycopg2 收藏 一下.. https:/ ...

    HDU3572 Task Schedule 【最大流】

    Task Schedule Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others) To ...

    php安装pear、pecl

    安装pear.pecl特别简单,只需要两步. wget http://pear.php.net/go-pear.phar php go-pear.phar [root@localhost bin]# ...

    Linux中什么是动态网站环境及如何部署

    当谈论起网站时,我们可能听说过静态和动态这两个词,但却不知道它们的含义,或者从字面意思了解一些却不知道它们的区别. 这一切可以追溯到网站和网络应用程序,Web应用程序是一个网站,但很多网站不是Web应 ...

    【html5】解决HTML5新标签不兼容的问题

    html5标签: 1.语义化好 -> SEO a). 程序交流方便 b). 搜索引擎友好 baidu -> 不认识 google 2.本身不兼容,想兼容低版本,请使用如下方法: 方式一:使 ...

    PAT L2-009 抢红包

    https://pintia.cn/problem-sets/994805046380707840/problems/994805066890854400 没有人没抢过红包吧…… 这里给出N个人之间互 ...

    Docker Kubernetes 容器更新与回滚

    Docker Kubernetes 容器更新与回滚 环境: 系统:Centos 7.4 x64 Docker版本:18.09.0 Kubernetes版本:v1.8 管理节点:192.168.1.79 ...

    iOS开发-UITapGestureRecognizer手势

    手势在iOS开发中是一个比较常用的功能,不过相对来说大家用的比较少,经常刷网易新闻,上次用了一下捏合手势才发现可以调整字体大小.昨天看到一个介绍摇一摇这个功能的,没看到之前一直都觉得摇一摇是微信的专有 ...

    展开全文
  • 图片转换: package com.qsmart.audit.utility... import java.io.ByteArrayOutputStream; import java.io.File; import java.io.FileInputStream; ...import org.kobjects.base64.Base64;...import android.R.integer; pub
  • 刚开始路走的都很顺,但是走到通过Android客户端上传图片到Asp.Net 服务器的时候出现很大的问题,图片是上传了,就是显示不出来,用照片查看器查看的时候显示:‘没有预览’,用画图软件打开的时候显示‘无效的位图...
  • 【实例简介】Android客户端用Json与Asp.Net服务器交互信息【实例截图】【核心代码】package com.kulmao.json;import java.io.IOException;import java.io.UnsupportedEncodingException;import java.sql.Timestamp;...
  • ASP 本地服务器小软件

    2008-12-24 16:49:44
    简单易用的ASP 本地服务器 不用为没有IIS而犯难. 这个软件将助你完成动态网页的设计梦想! ASP本地服务器问题 悬赏分:50 - 提问时间2008-5-23 17:39 问题为何被关闭 我装了IIS了,为什么扩展名是‘htm’的就可以...
  • 对于已创建的裸金属服务器,仍采用AUTO模式,业务随机占用31000~32999中的一个端口。一键式重置密码插件随机占用的端口的原则是:在该范围内,系统会按照自小到大的顺序,占用当前空闲的端口。推荐您将一键式重置...
  • 文件提供android端和web端。。。android端提供两种上传方式,web端提供两种接收方式,一种为aspx文件和web服务方式(asmx),android:xUtils三方工具,和自带的上传方式。。。xUtils方式解决了某些手机在上传照片...
  • ASP下载服务器apk文件

    2016-11-30 14:58:36
    通过路径访问服务器文件并下载。 首先可以在部署在服务器上的项目根目录下新建一个文件夹,例如“download”文件,将想公开的.apk文件放进去,但是现在用户没有权限访问到该目录,会出现403-Forbidden错误。 需要...
  • 哪位大神给个思路,小弟先谢谢嘞
  • 安卓asp.net与安卓交互项源码实现了安卓客户端跟web服务端的登录交互等功能,涉及的知识比较基础,C#的IIS服务器配置大家可以上网查一下,数据库请参考model类库中的变量建表,配置好服务器后,到安卓客户端代码中...
  • ASP.NET服务器黑客程序

    2004-08-18 15:04:42
    ASP.NET服务器黑客程序
  • Android开发者如何搭建服务器

    万次阅读 多人点赞 2017-09-01 11:19:21
    Android 开发者有时也可以通过开发javaweb项目写接口然后供APP 调用,这时候你就需要一个服务器去发布接口项目,那么Android 开发者如何搭建自己的服务器?首先你需要选择一个服务器提供商,现在市面上有很多云端...
  • 安卓服务器,本人亲测可用,对系统资源占用较多(200mb左右吧),可以做个小型的服务器,支持php、asp、mysql。
  • 安卓客户端,与上传图片有关的代码 ``` String BOUNDARY = UUID.randomUUID().toString(); String PREFIX = "--"; try { ByteArrayOutputStream bitmapByteOutput=new ByteArrayOutputStream(); bitmap....
  • 目前服务器只有80端口开放,android端用HttpURLconnection类通讯交换数据。不知服务器这端用ASP.NET如何实现?如有人知道,请提供个DEMO程序。
  • 遇到的问题: 1.java.io.IOException: open failed: EINVAL (Invalid argument)异常,在模拟器中的sd卡创建文件夹和文件时报错 出错原因可能是:(1)文件名称中含有不符合...2. android.os.NetworkOnMainThreadE...
  • android 获取服务器json数据

    千次阅读 2010-09-13 11:55:00
    http://192.168.2.68:80/webapp/getlistjson.asp ");  textView.setText(json);    } catch (ClientProtocolException e) {  // TODO Auto-generated catch block  e.printStackTrace();  } catch ...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 9,574
精华内容 3,829
关键字:

安卓asp服务器