拷贝程序

AndroidManifest.xml

 1 <?xml version="1.0" encoding="utf-8"?>
 2 <manifest xmlns:android="http://schemas.android.com/apk/res/android"
 3     package="com.example.administrator.testapp">
 4
 5     <application
 6         android:allowBackup="true"
 7         android:icon="@mipmap/ic_launcher"
 8         android:label="@string/app_name"
 9         android:supportsRtl="true"
10         android:theme="@style/AppTheme">
11         <activity android:name=".MainActivity" />
12         <activity android:name=".test_activity6" />
13         <activity android:name=".TestActivity7"></activity>
14         <activity android:name=".TestActivity8" />
15         <activity android:name=".Main2Activity">
16             <intent-filter>
17                 <action android:name="android.intent.action.MAIN" />
18                 <category android:name="android.intent.category.LAUNCHER" />
19             </intent-filter>
20         </activity>
21     </application>
22
23 </manifest>

activity_mani2.xml

 1 <?xml version="1.0" encoding="utf-8"?>
 2 <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
 3     xmlns:tools="http://schemas.android.com/tools"
 4     android:layout_width="match_parent"
 5     android:layout_height="match_parent"
 6     tools:context="com.example.administrator.testapp.Main2Activity"
 7     android:orientation="vertical">
 8
 9     <Button
10         android:layout_width="match_parent"
11         android:layout_height="wrap_content"
12         android:text="模拟拷贝"
13         android:id="@+id/copy"/>
14     <Button
15         android:layout_width="match_parent"
16         android:layout_height="wrap_content"
17         android:text="消息机制"
18         android:id="@+id/xj"/>
19 </LinearLayout>

普通方法:

 1 package com.example.administrator.testapp;
 2
 3 import android.app.ProgressDialog;
 4 import android.os.Bundle;
 5 import android.os.Handler;
 6 import android.os.Message;
 7 import android.support.v7.app.AppCompatActivity;
 8 import android.view.View;
 9 import android.widget.Button;
10 import android.widget.TextView;
11 import android.widget.Toast;
12
13 public class Main2Activity extends AppCompatActivity
14 {
15     Button copy,xj;
16     @Override
17     protected void onCreate(Bundle savedInstanceState)
18     {
19         super.onCreate(savedInstanceState);
20         setContentView(R.layout.activity_main2);
21
22         copy=(Button)findViewById(R.id.copy);
23         copy.setOnClickListener(new View.OnClickListener()
24         {
25             @Override
26             public void onClick(View v)
27             {
28                 final ProgressDialog progressDialog=new ProgressDialog(Main2Activity.this);
29                 progressDialog.setTitle("拷贝进度");
30                 progressDialog.setMessage("拷贝中...");
31                 progressDialog.setProgressStyle(ProgressDialog.STYLE_HORIZONTAL);
32                 progressDialog.show();
33                 new Thread()
34                 {
35                     @Override
36                     public void run()
37                     {
38                         for (int i=0;i<=100;i++)
39                         {
40                             progressDialog.setProgress(i);
41                             try
42                             {
43                                 Thread.sleep(100);
44                             }
45                             catch (Exception e)
46                             {
47                                 e.printStackTrace();
48                             }
49                         }
50                         progressDialog.dismiss();
51                         runOnUiThread(new Runnable()
52                         {
53                             @Override
54                             public void run()
55                             {
56                                 Toast.makeText(Main2Activity.this, "拷贝完成", Toast.LENGTH_SHORT).show();
57                             }
58                         });
59                     }
60                 }.start();
61             }
62         });

消息机制

 1 public class Main2Activity extends AppCompatActivity
 2 {
 3     Button copy,xj;
 4     @Override
 5     protected void onCreate(Bundle savedInstanceState)
 6     {
 7         super.onCreate(savedInstanceState);
 8         setContentView(R.layout.activity_main2);
 9
10         xj=(Button)findViewById(R.id.xj);
11         xj.setOnClickListener(new View.OnClickListener()
12         {
13             @Override
14             public void onClick(View v)
15             {
16                 final ProgressDialog  progressdialog=new ProgressDialog(Main2Activity.this);
17                 progressdialog.setTitle("拷贝进度");
18                 progressdialog.setMessage("请稍后....");
19                 progressdialog.setProgressStyle(ProgressDialog.STYLE_HORIZONTAL);
20                 progressdialog.show();
21                 new Thread(new Runnable()
22                 {
23                     @Override
24                     public void run()
25                     {
26                         for (int i=0;i<100;i++)
27                         {
28                             progressdialog.setProgress(i);
29                             try
30                             {
31                                 Thread.sleep(100);
32                             }
33                             catch (Exception e)
34                             {
35                                 e.printStackTrace();
36                             }
37                         }
38                         progressdialog.dismiss();
39                         runOnUiThread(new Runnable()
40                         {
41                             @Override
42                             public void run()
43                             {
44                                 Toast.makeText(Main2Activity.this, "拷贝完成!", Toast.LENGTH_SHORT).show();
45                             }
46                         });
47                     }
48                 }).start();
49             }
50         });
51     }
52 }

时间: 2024-11-10 21:30:43

拷贝程序的相关文章

Robocopy是微软Windows Server 2003资源工具包中众多多用途的实用程序之一(它是基于强大的拷贝程序

Robocopy是微软Windows Server 2003资源工具包中众多多用途的实用程序之一(它是基于强大的拷贝程序).没错,Robocopy的功能是拷贝文件,你也许会觉得无聊并且要翻阅下一篇文章了,且慢,让我们给这个有趣的小程序一个机会吧.Robocopy能够处理包括巨大的数据字节块在内的复制操作,并且它可以让你确定拥有像Copy和Xcopy等其它拷贝程序那样的技术规范.解释一下,例如你可以用Robocopy去拷贝某一个完整的目录树,而不仅仅是树下的三层.并且,你还可以指定Robocopy

【Linux】线程并发拷贝程序

据说大连某211高校的李教授越来越重口.不仅延续要求他所带的每个本科班.都要写一份线程并发拷贝程序的传统,并且还開始规定不能用Java语言写作.导致我之前写的<[Java]线程并发拷贝程序>(点击打开链接)作废.全部李教授旗下的学生,必须在毫无图形界面的Linux系统.用里面vi去写作. 这更让莘莘学子们感觉本来头来就不光明的天空更加黑暗起来. 更重要的是.若干年过去了,网上对其的研究与资料,依然是少数.依然是那份流传已久,以讹传讹的C语言版. 尽管这个程序毫无研究价值,可是本着治病救人.同一

【Java】线程并发拷贝程序

据说大连某211高校的信息学院的李教授非常好这口,他带的每个操作系统本科班,每个学期都必须完成这个程序,不过网上关于这方面的资料甚少,就只有一份C语言版. 然而,那份被历届学生已经抄烂,改实验结果把李教授忽悠了N年的C语言版,所使用的类.所开的线程与进程也不甚合理,把一个本来非常简单的程序搞得十分冗长.明明这个线程并发拷贝程序只涉及到线程的互斥的方面,与线程的同步半点关系,这个线程并发拷贝程序的互斥,也就是每个线程操作的文件只能是一个,保证不出现一个文件被多个文件操作的情况即可,做完拷贝之后根本

U盘自动拷贝程序

描述:启动该程序后,自动检测U盘是否存在,若存在,将U盘中所有的文件拷贝到电脑的指定目录下. 注:本篇博文仅支持技术讨论,不用于数据的盗取之类的黑科技. 本程序基于Win32开发,主要是利用Win32的消息函数.也可是MFC等含有消息循环的体系. 思路: 1.WM_DEVICECHANGE,检查当前的设备状态.DBT_DEVICEARRIVAL ,插入设备响应. 2.lParam参数,附带U盘插入的盘符.如:G盘.获取该盘符 3.GetDriveType() == DRIVE_REMOVABLE

用java写一个简单的文件拷贝程序吧

代码: public static void copyFile(String srcPath, String destPath) throws IOException { //建立File对象的来源与目的 File src = new File(srcPath); File dest = new File(destPath); //由于只能拷贝文件,所以判定输入流是否为文件 if(!src.isFile()) { System.out.println("只能拷贝文件!"); throw

JavaScript防止网页被拷贝程序代码——SHOPXX(shop++)

1.使右键和复制失效方法1:禁止鼠标右键+禁止选中文本代码很简单,只需要在head标签的javascript内加入以下两行代码即可.在网页中加入以下代码:代码如下    <script language="Javascript"> document.oncontextmenu=new Function("event.returnValue=false"); document.onselectstart=new Function("event.r

MP3拷贝程序---字节流

1 package cn.itcast.p7.io.bytestream.test; 2 3 import java.io.BufferedInputStream; 4 import java.io.BufferedOutputStream; 5 import java.io.FileInputStream; 6 import java.io.FileOutputStream; 7 import java.io.IOException; 8 9 public class CopyMp3Test

黑马程序员_OC语言前期准备

OC语言前期准备 一.OC简介 Oc语言在c语言的基础上,增加了一层最小的面向对象语法,完全兼容C语言,在OC代码中,可以混用c,甚至是c++代码. 可以使用OC开发mac osx平台和ios平台的应用程序. 拓展名:c语言-.c  OC语言.-m  兼容C++.-mm 注:其实c语言和oc甚至任何一门语言都只是我们为了实现一些功能,达到一些效果而采用的工具,抛开语法的差别外,我想最重要的应该是在解决问题的时候考虑的角度和方法不一样而已,然而这也构成了学习一门语言的重要性. 二.语法预览 (一)

多进程和多线程文件拷贝

1. 线程与进程的异同点 A.相同点 1):  比如都有自己在系统中唯一标识ID,一组寄存器(pc指针),状态(6种),调度优先级以及所要遵循的调度策略. 2):  每个进程都有一个进程控制块,线程也拥有一个线程控制块(在Linux内核,线程控制块与进程控制块用同一个结         构体描述,即struct  task_struct),这个控制块包含线程的一些属性信息,操作系统使用这些属性信息来描述线             程. 3):  线程和子进程的创建者可以在线程和子进程上实行某些控