`

有用例子源码

阅读更多

收藏的有用例子:

数据库-SQL

 
Sql代码  收藏代码
  1. --SQLite  
  2.   --1.查询最后一行list_custom_id值  
  3.   select list_custom_id from tb_list where list_id = (select max(list_id) from tb_list)   
  4.   --2.修改表的名字  
  5.   alter table tb_custom rename to tb_ccc  
  6.   --3.查询某一行的数据  
  7.   ----from:从哪个索引开始.to:要查询的数据个数  
  8.   select * from tb_list limit from,to  
文摘-中文MP3名字下载  
Java代码  收藏代码
  1. 1.中文MP3名字下载问题  
  2.  http://192.168.1.104:8080/mp3/a1.mp3这样可以下载到  
  3.  http://192.168.1.104:8080/mp3/勇气.mp3   出现中文名字就下载不到了。  
  4.    
  5. 解决方法:  
  6.  1.修改Tomcat服务器conf\server.xml 这个文件。打开找到8080,在最后加上 URIEncoding="utf-8"  
  7.  <connector port="8080" protocol="HTTP/1.1" connectiontimeout="20000" redirectport="8443" uriencoding="utf-8">  
  8.  2.程序中修改“中文”的编码。关键代码URLEncoder.encode("string","utf-8");(只要把中文部分转编码就可以了)mp3info.getMp3Name()取得MP3的名字。  
  9.    
  10. utfname=URLEncoder.encode(mp3info.getMp3Name(),"utf-8");  
  11.  mp3url="http://192.168.1.104:8080/mp3/"+utfname;  
  12.  URL url=new URL(mp3url);  
  13.  ....代码略  
  14.  这样就可以下载到中文名称的MP3文件了。简单吧!~.~  
  15.  =================================================================================  
  16.  2.XML读取得中文的问题  
  17.  解决方法:在InputStreamReader中设置编码为gb2312  
  18.  关键代码如下:  
  19.  HttpURLConnection urlconn=(HttpURLConnection)url.openConnection();  
  20.  BufferedReader   br=new BufferedReader(new InputStreamReader(urlconn.getInputStream(),"gb2312"));  
  21.    
  22. 这样就可以解决问题了!  
  23.  </connector>  
两个个ListView设定焦点  
Java代码  收藏代码
  1. 两个ListView的焦点问题:  
  2.  两个ListView只能使其中一个获取焦点而另外一个无法获取到焦点,可以通过以下方法强制转移焦点。  
  3.    
  4. listView2.setFocusable(true);  
  5.  listView2.setFocusableInTouchMode(true);  
  6.  listView2.requestFocus();  
  7.  listView2.requestFocusFromTouch();  
  8.  ListView1.clearFocus();  
  9.  以上代码可以将焦点从listView1上移动到listView2上来。  
资源文件格式  
Java代码  收藏代码
  1. color.xml  
  2.   
  3. <!--?xml version="1.0" encoding="utf-8"?-->  
  4. <resources>  
  5.     <color name="red">#FF0000</color>  
  6. </resources>  
  7.   
  8. 访问color.xml颜色:res.getColor(R.color.red);  
  9.   
  10.   
  11.   
  12. drawable.xml  
  13.   
  14. <!--?xml version="1.0" encoding="utf-8"?-->  
  15. <resources>  
  16.     <drawable name="white">#FFFFFF</drawable>  
  17.     <drawable name="dark">#000000</drawable>  
  18.     <drawable name="red">#FF0000</drawable>  
  19. </resources>  
InputStream,byte[]互转  
Java代码  收藏代码
  1. //InputStream转byte[]  
  2.   private byte[] InputStreamToByte(InputStream is) throws IOException {  
  3.    ByteArrayOutputStream bytestream = new ByteArrayOutputStream();  
  4.    int ch;  
  5.    while ((ch = is.read()) != -1) {  
  6.     bytestream.write(ch);  
  7.    }  
  8.    byte imgdata[] = bytestream.toByteArray();  
  9.    bytestream.close();  
  10.    return imgdata;  
  11.   }  
  12.   
  13. //byte[]转InputStream  
  14.   byte[] data;  
  15.   InputStream is = new ByteArrayInputStream(data);  
自定义-Toast  
Java代码  收藏代码
  1. Toast toast = new Toast(context);  
  2. //设置Toast的显示位置  
  3. toast.setGravity(Gravity.CENTER_VERTICAL, 00);  
  4. toast.setDuration(Toast.LENGTH_LONG);  
  5. //设置定义的view  
  6. toast.setView(view);  
  7. toast.show();  
widget-TextView  
Java代码  收藏代码
  1. //1:设置粗体  
  2.   //在xml文件中使用android:textStyle="bold" 可以将英文设置成粗体,但是不能将中文设置成粗体,  
  3.   //将中文设置成粗体的方法是:  
  4.   TextView tv = (TextView)findViewById(R.id.TextView01);  
  5.                                       TextPaint tp = tv.getPaint();  
  6.                                       tp.setFakeBoldText(true);  
  7.   
  8. //2:文字中间加横线  
  9.   priceTV.setText("价格:2.00元");  
  10.   priceTV.getPaint().setFlags(Paint.STRIKE_THRU_TEXT_FLAG);  
  11.   
  12. //3:设置带滚动条的TextView  
  13.   http://mingkg21.iteye.com/blog/684859  
  14.   
  15. //4.TextView中插入图片  
  16.   http://blog.163.com/spf9190@126/blog/static/50207531201091545954587/  
  17.   
  18. //5.android--设置TextView部分文字的颜色和背景(高亮显示)  
  19.   http://blog.csdn.net/nie_feilong/article/details/6264049  
Widget-EditView  
Java代码  收藏代码
  1. //1.设置缺省值  
  2.     EditView.setHint("缺省值")  
  3.      
  4.    //设置是否显示光标  
  5.    setCursorVisible(false);  
  6.   
  7. //2.Edit属性  
  8.   //EditText继承关系:  
  9.    View-->TextView-->EditText。   
  10.   //设置提示信息   
  11.   android:hint="请输入数字!"   
  12.   
  13.   //设置只能输入整数,如果是小数则是:decimal   
  14.   android:numeric="integer"   
  15.     
  16.   //设置单行输入,一旦设置为true,则文字不会自动换行。   
  17.   android:singleLine="true"   
  18.     
  19.   //设置只能输入密码  
  20.   android:password="true"   
  21.     
  22.   //字体颜色  
  23.   android:textColor = "#ff8c00"   
  24.     
  25.   //字体  
  26.   android:textStyle="bold"   
  27.      
  28.   //大小  
  29.   android:textSize="20dip"   
  30.      
  31.   //以大写字母写  
  32.   android:capitalize = "characters"   
  33.    
  34.  //EditText没有这个属性,但TextView有  
  35.   android:textAlign="center"   
  36.       
  37.   //被选中文字的底色,默认为蓝色   
  38.   android:textColorHighlight="#cccccc"   
  39.     
  40.   //设置提示信息文字的颜色,默认为灰色  
  41.   android:textColorHint="#ffff00"   
  42.      
  43.   //控制字与字之间的间距   
  44.   android:textScaleX="1.5"   
  45.     
  46.  //字型  
  47.   android:typeface="monospace"   
  48.     
  49.  //空间背景,这里没有,指透明  
  50.   android:background="@null"   
  51.      
  52.   //控制比例  
  53.   android:layout_weight="1"   
  54.     
  55.   //EditText始终不弹出软件键盘   
  56.   android:textAppearance="?android:attr/textAppearanceLargeInverse"  
  57.     
  58.   
  59.  //1.EditText默认不弹出软件键盘  
  60.  //方法一:  
  61.  //在 AndroidMainfest.xml中选择哪个activity,设置windowSoftInputMode属性为 adjustUnspecified|stateHidden  
  62.  //例如:  
  63.  <activity android:name=".Main" android:label="@string/app_name" android:windowsoftinputmode="adjustUnspecified|stateHidden" android:configchanges="orientation|keyboardHidden">  
  64.              <intent-filter>  
  65.                  <action android:name="android.intent.action.MAIN">  
  66.                  <category android:name="android.intent.category.LAUNCHER">  
  67.              </category></action></intent-filter>发型123  
  68.          </activity>  
  69.   
  70.  //方法二:  
  71.     //让EditText失去焦点,使用EditText的clearFocus方法  
  72.  EditText edit=(EditText)findViewById(R.id.edit);  
  73.             edit.clearFocus();  
  74.    
  75.   //方法三:  
  76.     //强制隐藏Android输入法窗口  
  77.  EditText edit=(EditText)findViewById(R.id.edit);    
  78.             InputMethodManager imm = (InputMethodManager)getSystemService(Context.INPUT_METHOD_SERVICE);   
  79.            imm.hideSoftInputFromWindow(edit.getWindowToken(),0);  
  80.   
  81.    
  82.  //2.EditText始终不弹出软件键盘  
  83.   EditText edit=(EditText)findViewById(R.id.edit);  
  84.         edit.setInputType(InputType.TYPE_NULL);  
标题栏-状态栏-全屏  
Java代码  收藏代码
  1. //1.去除状态栏(电池,信号,等)  
  2. this.getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN, WindowManager.LayoutParams.FLAG_FULLSCREEN);  
  3.   
  4. //2.去除标题栏(应用程序TitleBar)  
  5. this.requestWindowFeature(Window.FEATURE_NO_TITLE);  
  6.   
  7. //3.实现全屏  
  8.   this.requestWindowFeature(Window.FEATURE_NO_TITLE);  
  9.   
  10.  this.getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN, WindowManager.LayoutParams.FLAG_FULLSCREEN);  
Sqlite3 常用命令  
Sql代码  收藏代码
  1. --1)创建数据库文件:    
  2.  2.   >SQLite3 d:\test.db 回车    
  3.  3.   就生成了一个test.db在d盘。    
  4.  4.   这样同时也SQLite3挂上了这个test.db    
  5.  5.   2)     
  6.  6.   用.help可以看看有什么命令    
  7.  7.   >.help 回车即可    
  8.  8.   3)可以在这里直接输入SQL语句创建表格 用;结束,然后回车就可以看到了    
  9.  9.   4)看看有创建了多少表    
  10.  10.   >.tables     
  11.  11.   5)看表结构    
  12.  12.   >.schema 表名    
  13.  13.   6)看看目前挂的数据库    
  14.  14.   >.database   
  15.  15.   7)如果要把查询输出到文件    
  16.  16.   >.output 文件名    
  17.  17.   > 查询语句;    
  18.  18.   查询结果就输出到了文件c:\query.txt     
  19.  19.   
  20.  20.   把查询结果用屏幕输出    
  21.  21.   >.output stdout    
  22.  22.   
  23.  23.   8)把表结构输出,同时索引也会输出    
  24.  24.     .dump 表名    
  25.  25.   9)退出    
  26.  26.   >.exit 或者.quit  
  27.  27.普通SQL操作,通用标准SQL语句。  
  28. ------------------------------------------------------------------  
  29.  28. 返回上一级 cd..  cd../  
  30.   
  31. //自己总结  
  32.  1.退出sqlite操作模式---- .quit  
  33.  2.退出adb shell "#"模式--- exit  
  34.  3.#rm -r xxx //删除名字为xxx的文件夹及其里面的所有文件   
  35.  4.#rm xxx //删除文件xxx   
  36.  5.#rmdir xxx //删除xxx的文件夹   
TextView 代码中字体设置  
Java代码  收藏代码
  1. 1.     
  2.    textView.setTextColor(Color.RED);//设置成红色  
  3.   textView.setTextSize(TypedValue.COMPLEX_UNIT_SP, 24f);//设置成24sp  
  4.   textView.setTypeface(Typeface.defaultFromStyle(Typeface.BOLD));//加粗  
  5. 2.//在xml文件中使用android:textStyle="bold" 可以将英文设置成粗体,但是不能将中文设置成粗体,  
  6.   //将中文设置成粗体的方法是:  
  7.   TextView tv = (TextView)findViewById(R.id.TextView01);  
  8.                                       TextPaint tp = tv.getPaint();  
  9.                                       tp.setFakeBoldText(true);  
  10. 3.TextView(EditView)文字底部或者中间 加横线的简介与内容  
  11.    promotionLinkText = (TextView) this .findViewById(R.id. text_promotion_link );  
  12.   
  13.   中间加横线  
  14.   promotionLinkText .getPaint().setFlags(Paint. STRIKE_THRU_TEXT_FLAG );  
  15.   
  16.   底部加横线:  
  17.   promotionLinkText .getPaint().setFlags(Paint. UNDERLINE_TEXT_FLAG );  
安卓-常用代码段  
Java代码  收藏代码
  1. //1:获取SDcard根目录:  
  2.   Environment.getExternalStorageDirectory().toString()+"\"  
  3.   
  4. //2:获取屏幕宽、高  
  5.   DisplayMetrics dm = new DisplayMetrics();  
  6.         getWindowManager().getDefaultDisplay().getMetrics(dm);  
  7.         int screenwidth = dm.widthPixels;  
  8.         int screenheight = dm.heightPixels;  
  9.   
  10. //3:设置BUTTON && TEXTVIEW 跑马灯效果  
  11.      android:singleLine="true"  
  12.     android:ellipsize="marquee"  
  13.     android:focusableInTouchMode="true"  
  14.     android:focusable="true"  
  15.   
  16. //4:真正的跑马灯效果  
  17.    <textview android:layout_width="100px" android:layout_height="wrap_content" android:textcolor="@android:color/white" android:ellipsize="marquee" android:focusable="true" android:marqueerepeatlimit="marquee_forever" android:focusableintouchmode="true" android:scrollhorizontally="true" android:text="这才是真正的文字跑马灯效果">  
  18.   
  19. //5:按返回键,执行  
  20.       
  21.      //方法一:  
  22.      public boolean onKeyDown(int keyCode, KeyEvent event) {  
  23.         if (keyCode == KeyEvent.KEYCODE_BACK)  
  24.             finish();  
  25.         return super.onKeyDown(keyCode, event);  
  26.     }  
  27.   
  28.     //方法二:(更简便)  
  29.         @Override  
  30.     public void onBackPressed() {  
  31.         if(条件){  
  32.                    return;  
  33.                 }  
  34.         super.onBackPressed();  
  35.     }  
  36.   
  37. //6:获取外部布局xml  
  38.     View view=LayoutInflater.from(this).inflate(R.layout.list_page_load, null);  
  39.   
  40.    //获取Inflate两种方式:  
  41.    1.)LayoutInflater inflater = getLayoutInflater();    
  42.    2.)LayoutInflater inflater = (LayoutInflater)mContext.getSystemService(LAYOUT_INFLATER_SERVICE);     
  43.   
  44.    View layout = inflater.inflate(R.layout.custom_dialog,null);     
  45.   
  46. //7:获取当前运行的屏幕的activity名字  
  47.    java code:  
  48.      
  49. ActivityManager activityManager = (ActivityManager) getApplicationContext().getSystemService(Context.ACTIVITY_SERVICE);  
  50.         List<runningtaskinfo> forGroundActivity = activityManager.getRunningTasks(1);  
  51.         RunningTaskInfo currentActivity;  
  52.         currentActivity = forGroundActivity.get(0);  
  53.         String activityName = currentActivity.topActivity.getClassName();  
  54.   
  55.    记得在加AndroidManifest.xml中增加权限  
  56.    <uses-permission android:name="android.permission.GET_TASKS">  
  57.     
  58.    
  59.   
  60.   
  61.                           
  62. </uses-permission></runningtaskinfo></textview>  
安卓-常用权限  
Java代码  收藏代码
  1. 1.访问因特网:android.permission.INTERNET  
  2.   
  3. 2.SD卡读写:android.permission.WRITE_EXTERNAL_STORAGE  
  4.   
  5. 3.<!--SDCard中创建与删除文件权限 -->  
  6.   <uses-permission android:name="android.permission.MOUNT_UNMOUNT_FILESYSTEMS"></uses-permission>  
MediaPalyer-获取歌词  
Java代码  收藏代码
  1. package snippet;  
  2.   
  3. import java.io.BufferedReader;  
  4. import java.io.File;  
  5. import java.io.FileInputStream;  
  6. import java.io.FileNotFoundException;  
  7. import java.io.IOException;  
  8. import java.io.InputStreamReader;  
  9.   
  10. public class Test {  
  11.       
  12.     //计算歌词大小  
  13.     public static void method1(){  
  14.         int n = 0;  
  15.         int i = 0;  
  16.         int FSize = 0;   
  17.         
  18.         File file = new File("C:\\Users\\jay\\Desktop\\LiHong.mp3");  
  19.         StringBuilder builder = new StringBuilder();  
  20.           
  21.           boolean Flag1 = true,Flag2 = true;  
  22.           FileInputStream fis = null;  
  23.           InputStreamReader isr = null;  
  24.             
  25.           byte[] USLT_SIZE = new byte[4];  
  26.             
  27.           try {  
  28.             fis = new FileInputStream(file);  
  29.             isr = new InputStreamReader(fis,"UTF-8");  
  30.             int c = 0;  
  31.               
  32.             while((c=isr.read())!=-1){  
  33.                 
  34.             if(Flag1){  
  35.               if(c=='A'){  
  36.                 c = isr.read();  
  37.                 if(c=='P'){  
  38.                   c = isr.read();  
  39.                   if(c == 'I'){  
  40.                     c = isr.read();  
  41.                     if(c == 'C'){  
  42.                       USLT_SIZE[0] = (byte) isr.read();  
  43.                       USLT_SIZE[1] = (byte) isr.read();  
  44.                       USLT_SIZE[2] = (byte) isr.read();  
  45.                       USLT_SIZE[3] = (byte) isr.read();  
  46.                         
  47.                       System.out.println("STOP!!");  
  48.                         
  49.                       //歌词长度  
  50.                         
  51.                       //1.New Code:size  
  52. //                    FSize = ((USLT_SIZE[0] & 0xff)<<21)  
  53. //                    +((USLT_SIZE[1] & 0xff) <<14)  
  54. //                    +((USLT_SIZE[2] & 0xff)<<7)  
  55. //                    +((USLT_SIZE[3] & 0xff));   
  56.                       
  57.                       //2.Old Code:size  
  58. //                    FSize = (USLT_SIZE[0]<<21)  
  59. //                    +(USLT_SIZE[1]<<14)  
  60. //                    +(USLT_SIZE[2]<<7)  
  61. //                    +(USLT_SIZE[3]);   
  62.                         
  63.                         
  64.                       //3.BaiDu Code:size  
  65.                       FSize = USLT_SIZE[0]*0x1000000   
  66.                       +USLT_SIZE[1]*0x10000   
  67.                       +USLT_SIZE[2]*0x100   
  68.                       +USLT_SIZE[3];   
  69.                         
  70.                       System.out.println(FSize+"---------");  
  71.                         
  72.                       //跳过两个字节  
  73.                       isr.read();  
  74.                       isr.read();  
  75.                       //停止执行  
  76.                       Flag1 = false;  
  77.                     }  
  78.                   }  
  79.                 }  
  80.               }  
  81.               }  
  82.                 
  83.               //接上  
  84.               if(!Flag1){  
  85.                 if(Flag2){  
  86.                       
  87.                 while((n = isr.read())!=-1){  
  88. //                System.out.print((char)n);  
  89.                     builder.append((char)n);  
  90.                   i++;  
  91.                   if(i == FSize){  
  92.                     break;  
  93.                   }  
  94.                 }  
  95.                 }  
  96.                 Flag2 = false;  
  97.               }  
  98.                 
  99.               if(i == FSize && i!=0){  
  100.                   break;  
  101.               }  
  102.             }  
  103.               
  104.             System.out.println(builder.toString());  
  105.             fis.close();  
  106.             isr.close();  
  107.           } catch (FileNotFoundException e) {  
  108.             // TODO Auto-generated catch block  
  109.             e.printStackTrace();  
  110.           } catch (IOException e) {  
  111.             // TODO Auto-generated catch block  
  112.             e.printStackTrace();  
  113.           }  
  114.     }  
  115.   
  116.       
  117.     //封装,以行读取  
  118.     public static void method2(){  
  119.         File file = new File("C:\\Users\\jay\\Desktop\\Celine Dion-A New Day...Live in Las Vegas-At Last.mp3");  
  120.         String str = "";  
  121.         StringBuffer sb = new StringBuffer();  
  122.         BufferedReader br = null;;  
  123.         boolean Flag = true;  
  124.         try {  
  125.             br = new BufferedReader(new InputStreamReader(new FileInputStream(file),"UTF-8"));  
  126.             while((str = br.readLine())!=null){  
  127.                 if(!Flag){  
  128.                 if(str.length() == 0){  
  129.                         sb.append(str);  
  130.                         }  
  131.                 else{  
  132.                     if(str.contains("[")){  
  133.                         sb.append(str+"\n");  
  134.                     }else{  
  135.                         break;  
  136.                         }  
  137.                         }  
  138.                 }  
  139.                 if(Flag){  
  140.                     if(str.contains("USLT")){  
  141.                         sb.append(str.substring(str.indexOf("["),str.indexOf("]")+1)+"\n");  
  142.                         Flag = false;  
  143.                     }  
  144.                     }  
  145.             }  
  146.             System.out.println(sb.toString());  
  147.             br.close();  
  148.         } catch (FileNotFoundException e) {  
  149.             // TODO Auto-generated catch block  
  150.             e.printStackTrace();  
  151.         } catch (IOException e) {  
  152.             // TODO Auto-generated catch block  
  153.             e.printStackTrace();  
  154.         }finally{  
  155.             try {  
  156.                 br.close();  
  157.                 br = null;  
  158.             } catch (IOException e) {  
  159.                 e.printStackTrace();  
  160.             }  
  161.         }  
  162.     }  
  163.       
  164.     public static void main(String[] args) {  
  165. //      method2();  
  166.         method1();  
  167.           }  
  168. }  
JAVA-常用代码段  
Java代码  收藏代码
  1. //1.格式化数字  
  2.       
  3.         public static String format(double num){  
  4.         NumberFormat formatter  = new DecimalFormat("0.00");  
  5.         String s = formatter.format(num);  
  6.         return s;  
  7.     }  
  8.   
  9. //2:int转long  
  10.       
  11.        public static final long int2long(int value){  
  12.         long temp = (long) value;  
  13.         if(value < 0){  
  14.             temp = temp << 32;  
  15.             temp = temp >>> 32;  
  16.         }  
  17.         return temp;  
  18.     }  
  19.   
  20.   
  21.     longint  
  22.   
  23.         public static int longToInt(long num){  
  24.         Long l = Long.valueOf(num);  
  25.         int i = l.intValue();  
  26.         return i;  
  27.     }  
MediaPalyer-获取网络图片 && 获取ID3V2专辑封面  
Java代码  收藏代码
  1. //获取网络图片   
  2. public Bitmap getURLBitmap()  
  3.   {  
  4.     URL imageUrl = null;  
  5.     Bitmap bitmap = null;  
  6.     try  
  7.     {  
  8.       /* new URL对象将网址传入 */  
  9.       imageUrl = new URL(uriPic);  
  10.     } catch (MalformedURLException e)  
  11.     {  
  12.       e.printStackTrace();  
  13.     }  
  14.     try  
  15.     {  
  16.       /* 取得联机 */  
  17.       HttpURLConnection conn = (HttpURLConnection) imageUrl  
  18.           .openConnection();  
  19.       conn.connect();  
  20.       /* 取得回传的InputStream */  
  21.       InputStream is = conn.getInputStream();  
  22.       /* 将InputStream变成Bitmap */  
  23.       bitmap = BitmapFactory.decodeStream(is);  
  24.       /* 关闭InputStream */  
  25.       is.close();  
  26.         
  27.     } catch (IOException e)  
  28.     {  
  29.       e.printStackTrace();  
  30.     }  
  31.     return bitmap;  
  32.   }  
  33.   
  34.   
  35.   
  36.   
  37.   
  38.   
  39.   
  40. //获取ID3V2专辑封面  
  41. public Bitmap getImageURL(String URL_TYPE){  
  42.         Bitmap bitmap = null;  
  43.         if(URL_TYPE.equals("location")){  
  44.         String [] imageAttribs=new String[]{  
  45.                 MediaStore.Audio.Albums.ALBUM_ART  
  46.         };  
  47.         ContentResolver resolver = this.getContentResolver();  
  48.         Cursor cursorImage=resolver.query(MediaStore.Audio.Albums.EXTERNAL_CONTENT_URI, imageAttribs, nullnullnull);  
  49.         if(cursorImage!=null){  
  50.                 cursorImage.moveToNext();  
  51.                 imageUri=cursorImage.getString(0);  
  52.                 if(imageUri!=null){  
  53.                     try {  
  54.                         FileInputStream fis = new FileInputStream(new File(imageUri));  
  55.                         bitmap = BitmapFactory.decodeStream(fis);  
  56.                     } catch (FileNotFoundException e) {  
  57.                         // TODO Auto-generated catch block  
  58.                         e.printStackTrace();  
  59.                     }  
  60.                 }  
  61.         }  
  62.         }  
  63.         return bitmap;  
  64.     }  
MediaPalyer-获取SDcard所有歌曲信息  
Java代码  收藏代码
  1. package com.media;  
  2.   
  3. import android.app.Activity;  
  4. import android.database.Cursor;  
  5. import android.os.Bundle;  
  6. import android.provider.MediaStore;  
  7.   
  8. public class Media_TestActivity extends Activity {  
  9.   
  10.     Cursor cursor = null;  
  11.     int[] music_id;  
  12.     private String[] arr_musicname,arr_musictime,arr_musicsinger;  
  13.       
  14.     public void onCreate(Bundle savedInstanceState) {  
  15.         super.onCreate(savedInstanceState);  
  16.         setContentView(R.layout.main);  
  17.   
  18.         //--获取歌曲信息  
  19.         Cursor c = this.getContentResolver().query(MediaStore.Audio.Media.EXTERNAL_CONTENT_URI,  
  20.             new String[]{MediaStore.Audio.Media.TITLE,  
  21.             MediaStore.Audio.Media.DURATION,  
  22.             MediaStore.Audio.Media.ARTIST,  
  23.             MediaStore.Audio.Media._ID,  
  24.             MediaStore.Audio.Media.DISPLAY_NAME },nullnullnull);  
  25.              
  26.             c.moveToFirst();  
  27.             arr_musicname = new String[c.getCount()];  
  28.             arr_musictime = new String[c.getCount()];  
  29.             arr_musicsinger = new String[c.getCount()];  
  30.           
  31.             for(int i=0;i<c.getcount();i++){ arr_musicname[i]="c.getString(4);" arr_musictime[i]="c.getInt(1)+"";" arr_musicsinger[i]="c.getString(2);" system.out.println(arr_musicname[i]+"\t"+arr_musictime[i]+arr_musicsinger[i]);="" c.movetonext();="" }="" 可运行的activity="" package="" com.media;="" import="" java.io.file;="" java.io.fileinputstream;="" java.io.filenotfoundexception;="" java.io.ioexception;="" java.io.inputstream;="" java.net.httpurlconnection;="" java.net.malformedurlexception;="" java.net.url;="" java.util.arraylist;="" java.util.list;="" android.app.activity;="" android.content.contentresolver;="" android.content.intent;="" android.database.cursor;="" android.graphics.bitmap;="" android.graphics.bitmapfactory;="" android.net.uri;="" android.os.bundle;="" android.os.environment;="" android.provider.mediastore;="" android.widget.imageview;="" android.widget.toast;="" public="" class="" media_testactivity="" extends="" activity="" {="" string="" imageuri;="" 图片地址="" private="" imageview="" img;="" uripic="http://pic.sjjia.com/pic/downfileq/qds/82274aab2dshhy.jpg" ;="" void="" oncreate(bundle="" savedinstancestate)="" super.oncreate(savedinstancestate);="" setcontentview(r.layout.main);="" sendbroadcast(new="" intent(intent.action_media_mounted,="" uri.parse("file:="" "="" +="" environment.getexternalstoragedirectory().getabsolutepath())));="" img="(ImageView)" findviewbyid(r.id.imgid);="" img.setimagebitmap(getimageurl());="" 获取网络图片="" bitmap="" geturlbitmap()="" url="" imageurl="null;" try="" *="" new="" url对象将网址传入="" url(uripic);="" catch="" (malformedurlexception="" e)="" e.printstacktrace();="" 取得联机="" httpurlconnection="" conn="(HttpURLConnection)" .openconnection();="" conn.connect();="" 取得回传的inputstream="" inputstream="" is="conn.getInputStream();" 将inputstream变成bitmap="" 关闭inputstream="" is.close();="" (ioexception="" return="" bitmap;="" 获取id3v2专辑封面="" getimageurl(){="" []="" imageattribs="new" string[]{="" mediastore.audio.albums.album="" --="" 专辑="" mediastore.audio.albums.artist="" 歌手="" mediastore.audio.albums.album_art,="" 封面="" };="" contentresolver="" resolver="this.getContentResolver();" cursor="" cursorimage="resolver.query(MediaStore.Audio.Albums.EXTERNAL_CONTENT_URI," imageattribs,="" null,="" null);="" if(cursorimage!="null){" cursorimage.movetonext();="" imageuri="cursorImage.getString(0);" if(imageuri!="null){" system.out.println("---"+imageuri);="" toast.maketext(media_testactivity.this,="" imageuri+"",="" toast.length_long).show();="" fileinputstream="" fis="new" fileinputstream(new="" file(imageuri));="" (filenotfoundexception="" todo="" auto-generated="" block="" }else{="" system.out.println("is="" null");="" }<="" pre="">  
  32.         </c.getcount();i++){>  

分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics