Java文件如何读取mp3文件中的歌曲的信息,歌手和播放时间呢

Java文件如何读取mp3文件中的歌曲的信息,歌手和播放时间呢
Java文件如何读取mp3文件中的歌曲的信息,歌手和播放时间呢

1个回答

                    MP3File mp3File = (MP3File) AudioFileIO.read(new File(filePath));

        MP3AudioHeader audioHeader = (MP3AudioHeader) mp3File.getAudioHeader();

        // 歌曲名称
        String songName = getInfoFromFrameMap(mp3File, SONG_NAME_KEY);
        // 歌手名称
        String artist = getInfoFromFrameMap(mp3File, ARTIST_KEY);
        // 歌曲专辑
        String album = getInfoFromFrameMap(mp3File, ALBUM_KEY);
        // 播放时长
        int duration = audioHeader.getTrackLength();
Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
其他相关推荐
java m4a 文件头部信息读取

m4a 音频文件,现在需要读取 m4a 头部信息(读取 mp3 的容易),求指点。

c++怎么读取和播放电脑中的mp3文件

用什么函数,文件头等,执行语句时(比如设计了一个时钟,时间到就播放)可以在应用程序中播放mp3歌曲

java swing mp3音频播放问题

想要实现本地文件中的录音文件(文件为MP3格式)播放,下面是我自己定义的播放监听的部分代码,求大神补全下面的play方法和pause方法 package MusicFramework; import java.awt.event.ActionEvent; import java.awt.event.ActionListener; import javax.swing.JFileChooser; public class AudioPlay implements ActionListener { JFileChooser fc = new JFileChooser(); @Override public void actionPerformed(ActionEvent e) { // TODO Auto-generated method stub if(e.getActionCommand().equals("openfileBtn")) { //点击打开播放文件按钮后的动作 //播放音频文件按钮可以启动 QueryByHumming.openfileBtn.setEnabled(false); QueryByHumming.playBtn.setEnabled(true); QueryByHumming.pauseBtn.setEnabled(false); //调用文件选择方法 openfile(); }else if(e.getActionCommand().equals("playBtn")){ //点击播放音频文件按钮的动作 QueryByHumming.openfileBtn.setEnabled(true); QueryByHumming.playBtn.setEnabled(false); QueryByHumming.pauseBtn.setEnabled(true); //调用播放音频的方法 play(); }else if(e.getActionCommand().equals("pauseBtn")){ //调用停止播放音频的方法 pause(); } } //选择音频文件 public void openfile(){ fc.setFileSelectionMode(JFileChooser.FILES_AND_DIRECTORIES); int intRetVal = fc.showOpenDialog(QueryByHumming.pl3); if( intRetVal == JFileChooser.APPROVE_OPTION){ QueryByHumming.text3.setText(fc.getSelectedFile().getPath()); } } //播放音频文件 public void play(){ } //暂停播放 public void pause(){ } }

AS中读取assets下mp3文件信息

如题,要如何读取?看很多说用MediaStore,可是怎么改到读取assets下?

关于JAVA播放音频文件的问题

代码如下,反正就是没有声音,我干吐了,实在不知道哪儿错了 public static void main(String[] args) throws IOException { String name="D:/转换文件/七里香-周杰伦.wav"; mp3(name); } public static void mp3(String name) throws IOException { File file=new File(name); Scanner input=new Scanner(System.in); AudioClip sound=Applet.newAudioClip(file.toURL()); sound.play();//播放 input.nextLine(); input.close(); }

mfc怎么读取MP3文件的时长

mfc怎么读取MP3文件的时长 mfc怎么读取MP3文件的时长 如题!有什么api之类的吗。

java编的音乐播放器,只能播放部分MP3文件

import java.io.File; import java.io.IOException; import javax.sound.sampled.AudioFormat; import javax.sound.sampled.AudioInputStream; import javax.sound.sampled.AudioSystem; import javax.sound.sampled.DataLine; import javax.sound.sampled.SourceDataLine; public class Player { private String path;//文件路径 private String name;//文件名称 private AudioFormat audioFormat;//播放格式 private AudioInputStream audioInputStream;//音乐播放输入流 private SourceDataLine sourceDataLine;// 播放设备 private boolean isStop = false;// 播放停止标志 /** * 创建对象时需要传入播放路径及文件名称 * @param path * @param name */ public Player(String path ,String name) { this.path = path; this.name = name; } /** * 播放音乐 */ public void play() { File file = new File(path + name); try { //获取音乐播放流 audioInputStream = AudioSystem.getAudioInputStream(file); //获取播放格式 audioFormat = audioInputStream.getFormat(); /*System.out.println("取样率:"+ audioFormat.getSampleRate()); Map map = audioFormat.properties(); Iterator it = map.entrySet().iterator(); while(it.hasNext()) { Map.Entry m = (Entry) it.next(); System.out.println(m.getKey()+":"+m.getValue()); }*/ //其它格式音乐文件处理 if(audioFormat.getEncoding() != AudioFormat.Encoding.PCM_SIGNED) { audioFormat = new AudioFormat(AudioFormat.Encoding.PCM_SIGNED, audioFormat.getSampleRate(), 16, audioFormat.getChannels(), audioFormat.getChannels()*2, audioFormat.getSampleRate(), audioFormat.isBigEndian()); audioInputStream = AudioSystem.getAudioInputStream(audioFormat, audioInputStream); } //打开输出设备 DataLine.Info dataLineInfo = new DataLine.Info(SourceDataLine.class, audioFormat,AudioSystem.NOT_SPECIFIED); sourceDataLine = (SourceDataLine) AudioSystem.getLine(dataLineInfo); sourceDataLine.open(audioFormat); sourceDataLine.start(); //启动播放线程 new Thread() { @Override public void run() { try { int n = 0; byte tempBuffer[] = new byte[320]; while(n != -1) { //停止播放入口,如果isStop被置为真,结束播放 if(isStop) break; //将音乐输入流的数据读入tempBuffer缓存 n = audioInputStream.read(tempBuffer,0 , tempBuffer.length); if(n>0) { //将缓存数据写入播放设备,开始播放 sourceDataLine.write(tempBuffer, 0, n); } } audioInputStream.close(); sourceDataLine.drain(); sourceDataLine.close(); } catch (IOException e) { e.printStackTrace(); throw new RuntimeException(); } } }.start(); } catch (Exception e) { e.printStackTrace(); System.exit(0); throw new RuntimeException(); } } /** * 停止播放 */ public void stop() { try { isStop = true; audioInputStream.close(); sourceDataLine.drain(); sourceDataLine.close(); } catch (IOException e) { e.printStackTrace(); } } } import java.awt.BorderLayout; import java.awt.Color; import java.awt.GridLayout; import java.awt.event.ActionEvent; import java.awt.event.ActionListener; import java.io.File; import java.util.Vector; import javax.swing.ImageIcon; import javax.swing.JButton; import javax.swing.JFileChooser; import javax.swing.JFrame; import javax.swing.JPanel; import javax.swing.JScrollPane; import javax.swing.JTable; import javax.swing.filechooser.FileNameExtensionFilter; import javax.swing.table.DefaultTableModel; import com.zy.play.Player; public class MusicPanel extends JFrame{ private JButton add, playbtn, stopbtn, deletebtn, deleteAllbtn, upbtn, downbtn;//播放、停止、删除、删除全部、向上。向下按钮 private JTable table; //歌曲信息表 private Player player; private JPanel jpl1,jpl2; public MusicPanel() { initCompont(); } /** * 初始化界面 */ private void initCompont() { //各个按钮赋初始值 add = new JButton("导入"); playbtn = new JButton("试听"); stopbtn = new JButton("停止"); deletebtn = new JButton("单曲删除"); deleteAllbtn = new JButton("全部删除"); upbtn = new JButton("上一首"); downbtn = new JButton("下一首"); //导入按钮点击设置 add.addActionListener(new ActionListener() { @Override public void actionPerformed(ActionEvent e) { addFile(); } }); //试听按钮点击设置 playbtn.addActionListener(new ActionListener() { @Override public void actionPerformed(ActionEvent e) { if(player!=null) { player.stop(); player = null; } int rowNum = table.getSelectedRow(); if(rowNum != -1) { player = new Player((String)table.getValueAt(rowNum, 1) + "\\" ,(String)table.getValueAt(rowNum, 0)); System.out.println((String)table.getValueAt(rowNum, 1)+"\\"+(String)table.getValueAt(rowNum, 0)); player.play(); } } }); //停止按钮点击设置 stopbtn.addActionListener(new ActionListener() { @Override public void actionPerformed(ActionEvent e) { if(player != null) { player.stop(); player = null; } } }); //单曲删除按钮点击设置 deletebtn.addActionListener(new ActionListener() { @Override public void actionPerformed(ActionEvent e) { int rowNum = table.getSelectedRow(); if(rowNum != -1) { ((DefaultTableModel)table.getModel()).removeRow(rowNum); } } }); //删除全部按钮点击设置 deleteAllbtn.addActionListener(new ActionListener() { @Override public void actionPerformed(ActionEvent e) { for(int i = table.getRowCount()-1; i>=0; i--) { ((DefaultTableModel)table.getModel()).removeRow(i); } } }); downbtn.addActionListener(new ActionListener() { @Override public void actionPerformed(ActionEvent e) { int n = table.getSelectedRow() + 1; if(n < table.getRowCount()) { table.setRowSelectionInterval(n, n); } } }); upbtn.addActionListener(new ActionListener() { @Override public void actionPerformed(ActionEvent e) { int n = table.getSelectedRow() - 1; if(n < -1) { n = table.getRowCount() - 1; } if(n >= 0) { table.setRowSelectionInterval(n, n); } } }); //添加各个按钮 jpl1= new JPanel(new GridLayout(1,7)); jpl1.add(add); jpl1.add(playbtn); jpl1.add(stopbtn); jpl1.add(deletebtn); jpl1.add(deleteAllbtn); jpl1.add(upbtn); jpl1.add(downbtn); //this.setLayout(new BorderLayout()); this.add(jpl1,"North"); Vector<String> tableContent = new Vector<String>(); //表格内容 Vector<String> columnName = new Vector<String>();//歌曲信息表格列名称 columnName.add("歌曲名称"); columnName.add("存放路径"); //设置table table = new JTable(tableContent, columnName); table.setSelectionBackground(Color.blue); table.setSelectionForeground(Color.LIGHT_GRAY); jpl2=new JPanel(); jpl2.add(new JScrollPane(table), BorderLayout.CENTER); this.add(jpl2,"Center"); this.setSize(650, 210); this.setVisible(true); this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); } /** * 添加文件 */ private void addFile() { JFileChooser fc = new JFileChooser(); //设置选入文件类型 FileNameExtensionFilter filter = new FileNameExtensionFilter("mp3 or wav file", "mp3","wav","MP3","WAV"); fc.setFileFilter(filter); fc.setFileSelectionMode(JFileChooser.FILES_ONLY);//设置只选择文件 fc.setMultiSelectionEnabled(true);//设置选择多个文件 int intRetVal = fc.showDialog(this, "打开"); //获取文件并添加到table if(intRetVal == JFileChooser.APPROVE_OPTION) { File[] file = fc.getSelectedFiles(); String name; for(File var : file) { name = var.getName().toLowerCase(); if( name.endsWith(".mp3")|| name.endsWith(".wav")) { this.addMusicItem(var.getName() , var.getParentFile().getAbsolutePath()); } } } } /** * table的行中添加音乐文件名称name,音乐文件路径path * @param name * @param path */ private void addMusicItem(String name, String path ) { Vector<String> rowData = new Vector<String>(); rowData.add(name); rowData.add(path); //rowData.add(time); DefaultTableModel tabMod= (DefaultTableModel) table.getModel(); tabMod.addRow(rowData); } public static void main(String[] args) { MusicPanel test=new MusicPanel(); } } ``` ``` 报错:java.io.IOException: Resetting to invalid mark

android读取assets下的mp3文件的title、author、专辑图片等信息

应该如何获取? 我用的方法是,先在sd卡上写一个mp3文件,再调用cursor来访问MediaStore。但问题是我是真机调试,可以看到手机中确实存在了这个文件,但uri读不到,直接电脑中打开也看不到这个文件,没有隐藏文件,也设置了读写权限。另一个问题是我担心这样做反复读写,跑起来会很慢。请问怎么解决

Java音频播放,只播放本地音乐

package com.rjxy.Music1_1; import java.io.BufferedInputStream; import java.io.File; import java.io.FileInputStream; import java.io.FileNotFoundException; import javazoom.jl.decoder.JavaLayerException; import javazoom.jl.player.Player; public class Music1 implements Runnable{ String path = "D:/java/青柠.wav"; File file = null; BufferedInputStream is = null; //mian()方法 public static void main(String args[]) { Music1 music = new Music1(); Thread thread = new Thread(music); thread.start(); } //重写run() public void run() { try { file = new File(path); is = new BufferedInputStream(new FileInputStream(file)); System.out.println(file.getName()+" 加载成功!"); } catch (FileNotFoundException e) { System.out.println(file.getName()+" 加载失败!"); e.printStackTrace(); } try { new Player(is); System.out.println("palyer创建成功!"); } catch (JavaLayerException e) { System.out.println("player创建失败!"); e.printStackTrace(); } try { Thread.sleep(64000); System.out.println("Thread休眠!"); } catch (InterruptedException e) { System.out.println("Thread休眠失败!"); e.printStackTrace(); } } } 为什么编译运行都不报错,但是为什么没有声音? 求大佬帮忙

c#读取到SQL Server中的MP3文件并实现播放

我想利用windows media player这个控件,用C#读取SQL Server中的MP3文件,并在windows media player上播放,求教该如何实现,最好有例子或详细代码!,谢谢!

java读取word中的附件,如mp3格式的附件。

word中的图片,文字都已经解决,但是里面包含的附件该怎么读取出来?

关于QT中MP3文件读写的问题

我是初学者,在用QT做音频加密的项目。对于音频文件读写现在出了点问题 相关代码如下: while(!inputFile.atEnd()) { inputFile.readLine(input,sizeof(input)); //test->encrypt(input,secret,key); //test->uncrypt(secret,output,key); int sign; //const char *temp = output; const char *temp = input; sign=inputFile.write(input,sizeof(input)); if(sign == -1) cout<<"error!"<<endl; } 这是测试读写有没有问题的代码,求大神看看有啥问题,重新写过的MP3文件不能播放

php读取音频文件并播放

现在有一个音频文件在项目外的一个文件夹中,有什么方法可以读取并播放这个音频文件。。

写了一个简单的MP3,用一个线程完成从文件中读出歌词,无法显示是怎么回事?

RT,原来用一个函数完成歌词的读取,可以显示,现在我用一个线程来完成同样的功能,代码都是完全从那个函数中复制过去的,结果无法显示,控制台中也无法输出,求解 以下是代码: package app; import java.awt.BorderLayout; import java.awt.Color; import java.awt.Font; import java.awt.event.ActionEvent; import java.awt.event.ActionListener; import java.io.BufferedReader; import java.io.FileInputStream; import java.io.FileNotFoundException; import java.io.IOException; import java.io.InputStreamReader; import java.io.UnsupportedEncodingException; import java.net.MalformedURLException; import java.net.URL; import java.util.Vector; import javax.media.Manager; import javax.media.NoPlayerException; import javax.media.Player; import javax.swing.JButton; import javax.swing.JFrame; import javax.swing.JLabel; import javax.swing.JPanel; import javax.swing.JTextArea; public class PlayFrame extends JFrame implements Runnable { Player player; Vector playlist; Thread readlyric; BufferedReader br; String filedirectory = "file:1.mp3"; int position = 0; JLabel musicname; JTextArea lyric; JPanel panellyric, panelbutton; JButton playmusic, pausemusic, next, last; Font x = new Font("Serif", Font.ITALIC + Font.BOLD, 16); public PlayFrame() { try { br = new BufferedReader(new InputStreamReader(new FileInputStream( "1.lrc"), "UTF-8")); } catch (UnsupportedEncodingException e) { // TODO Auto-generated catch block e.printStackTrace(); } catch (FileNotFoundException e) { // TODO Auto-generated catch block e.printStackTrace(); } playlist = new Vector(); playlist.add("file:1.mp3"); playlist.add("file:2.mp3"); this.setTitle("MP3"); this.setBounds(400, 100, 350, 550); musicname = new JLabel("Music_Name", JLabel.CENTER); musicname.setFont(x); panellyric = new JPanel(); panelbutton = new JPanel(); lyric = new JTextArea(25, 25); lyric.setEditable(false); lyric.setBackground(Color.WHITE); lyric.setLineWrap(true);// 确定是否能在右边界自动换行 last = new JButton("Last"); playmusic = new JButton("Play"); pausemusic = new JButton("Pause"); next = new JButton("Next"); playmusic.addActionListener(play_button); pausemusic.addActionListener(stop_button); next.addActionListener(next_button); last.addActionListener(last_button); panellyric.add(lyric); panelbutton.add(last); panelbutton.add(playmusic); panelbutton.add(pausemusic); panelbutton.add(next); this.add(musicname, BorderLayout.NORTH); this.add(panellyric, BorderLayout.CENTER); this.add(panelbutton, BorderLayout.SOUTH); this.setVisible(true); this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); } public ActionListener play_button = new ActionListener() { @Override public void actionPerformed(ActionEvent e) { // TODO Auto-generated method stub display(); //read(); musicname.setText(filedirectory); } }; public ActionListener stop_button = new ActionListener() { @Override public void actionPerformed(ActionEvent e) { // TODO Auto-generated method stub pause(); } }; public ActionListener next_button = new ActionListener() { @Override public void actionPerformed(ActionEvent e) { // TODO Auto-generated method stub next(); } }; public ActionListener last_button = new ActionListener() { @Override public void actionPerformed(ActionEvent e) { // TODO Auto-generated method stub last(); } }; public void display() { try { player = Manager.createPlayer(new URL(filedirectory)); readlyric=new Thread(); } catch (NoPlayerException e) { // TODO Auto-generated catch block e.printStackTrace(); } catch (MalformedURLException e) { // TODO Auto-generated catch block e.printStackTrace(); } catch (IOException e) { // TODO Auto-generated catch block e.printStackTrace(); } player.start(); readlyric.start(); } public void pause() { player.stop(); readlyric.stop(); } public void next() { pause(); if (position < playlist.size()) { filedirectory = playlist.get(++position).toString(); } else { position = 0; filedirectory = playlist.get(position).toString(); } display(); } public void last() { pause(); if (position > 0) { filedirectory = playlist.get(--position).toString(); display(); } else { } } @Override public void run() { // TODO Auto-generated method stub System.out.println("enter method run"); int lastTime = 0; int minute, second, milliSecond, total; String str = "", time, words; try { while ((str = br.readLine()) != null) { // 获取'[]'中的时间字符串 time = str.substring(str.indexOf('[') + 1, str.indexOf(']')); minute = Integer.parseInt(time.substring(0, time.indexOf(':'))); second = Integer.parseInt(time.substring(time.indexOf(':') + 1, time.indexOf('.'))); milliSecond = Integer .parseInt(time.substring(time.indexOf(".") + 1)); // 计算总时间 total = minute * 60 * 1000 + second * 1000 + milliSecond * 10; Thread.sleep(total - lastTime); System.out.println("get lyric"); // 将歌词前面的时间信息去掉,在控制台输出歌词 words = str.substring(str.indexOf("]") + 1); System.out.println(words); lyric.append(words); lyric.append("\n"); // 立即绘制指定区域 lyric.paintImmediately(lyric.getBounds()); lastTime = total; } } catch (NumberFormatException | IOException e) { // TODO Auto-generated catch block e.printStackTrace(); } catch (InterruptedException e) { // TODO Auto-generated catch block e.printStackTrace(); } } // public void read() { // // int lastTime = 0; // int minute, second, milliSecond, total; // String str = "", time, words; // // try { // while ((str = br.readLine()) != null) { // // 获取'[]'中的时间字符串 // time = str.substring(str.indexOf('[') + 1, str.indexOf(']')); // minute = Integer.parseInt(time.substring(0, time.indexOf(':'))); // second = Integer.parseInt(time.substring(time.indexOf(':') + 1, // time.indexOf('.'))); // milliSecond = Integer // .parseInt(time.substring(time.indexOf(".") + 1)); // // 计算总时间 // total = minute * 60 * 1000 + second * 1000 + milliSecond * 10; // // Thread.sleep(total - lastTime); // // // 将歌词前面的时间信息去掉,在控制台输出歌词 // words = str.substring(str.indexOf("]") + 1); // // System.out.println(words); // lyric.append(words); // lyric.append("\n"); // // 立即绘制指定区域 // lyric.paintImmediately(lyric.getBounds()); // // lastTime = total; // } // } catch (NumberFormatException | IOException e) { // // TODO Auto-generated catch block // e.printStackTrace(); // } catch (InterruptedException e) { // // TODO Auto-generated catch block // e.printStackTrace(); // } // } public static void main(String[] args) { PlayFrame playframe = new PlayFrame(); } }

java歌曲文件的截取与拼接

对歌曲文件夹中任选两首歌,对高潮部分进行截取与拼接,怎么实现

这个有时候读取文件为什么会断流? while 到一半就断了

response.setHeader("Content-Type", "audio/mp3"); File file = new File(localhost_dir); int len_l = (int) file.length(); byte[] buf = new byte[4096]; FileInputStream fis = new FileInputStream(file); OutputStream out = response.getOutputStream(); len_l = fis.read(buf); while (len_l != -1) { out.write(buf, 0, len_l); len_l = fis.read(buf); } 这个有时候读取文件为什么会断流? while 到一半就断了 但是mp3文件是可以正常播放完的

Android 从网络下载文件,使用MediaStore扫描mp3文件

是这样的,我做了一个简单的音乐播放器,其中使用了MediaStore获取手机里的mp3文件,并把mp3文件信息放到一个ListView中作为歌曲列表。 还有一个功能就是通过网络下载mp3文件。但是下载完成之后,歌曲列表里却不会显示新下载的歌曲信息,我必须把手机重启之后新下载的歌曲才会显示到歌曲列表里面。 我知道系统是自动存储了手机里所有的音乐文件信息,是不是新下载的歌曲没有被添加到它的数据库中呢?所以重启手机之后才能生效? 但是我通过手机默认浏览器下载的歌曲,却能立即显示到歌曲列表里面。所以我想可能是我自己写的网络文件下载功能不够完善,没有能让系统注意到我已经下载的mp3文件。 所以有没有人遇到过同样的问题呢?或者有解决方法呢?求解~~

Java 如何播放aac类型的音频文件?

如题 本人对于音频方面等并不是很了解,恳请各位大佬帮忙看看 我尝试过: + 用KMPlayer、暴风影音直接播放->成功 + 用jmp123.jar播放aac->失败 + 用[AACPlayer播放器](https://github.com/9Lukas5/AACPlayer/tree/dev "github地址") 播放aac->程序进入死循环,失败 + 先用jave-1.0.2.jar先把aac转码成mp3(代码贴在下面),再用jmp123.jar进行播放->可以播放,但是声音十分奇怪 下面是源acc音频文件及转码后的mp3的链接: 链接: [百度云](https://pan.baidu.com/s/1pxgBKdX_B2EmSDVYxv0mJw "点我去百度云") 提取码: g9hv >谢谢了! 下面是转码的代码 ``` import it.sauronsoftware.jave.AudioAttributes; import it.sauronsoftware.jave.Encoder; import it.sauronsoftware.jave.EncoderException; import it.sauronsoftware.jave.EncodingAttributes; public class AudioUtils{ /** * 将aac转换成mp3格式文件 * * @param localFilePath 本地文件路径 * @param targetPath mp3输出路径 */ public static void changeLocalSourceToMp3(String localFilePath, String targetPath){ try { File source = new File(localFilePath); File target = new File(targetPath); AudioAttributes audio = new AudioAttributes(); Encoder encoder = new Encoder(); audio.setCodec("libmp3lame"); EncodingAttributes attrs = new EncodingAttributes(); attrs.setFormat("mp3"); attrs.setAudioAttributes(audio); encoder.encode(source, target, attrs); } catch (EncoderException e) { e.printStackTrace(); } } } ```

MySQL 8.0.19安装教程(windows 64位)

话不多说直接开干 目录 1-先去官网下载点击的MySQL的下载​ 2-配置初始化的my.ini文件的文件 3-初始化MySQL 4-安装MySQL服务 + 启动MySQL 服务 5-连接MySQL + 修改密码 先去官网下载点击的MySQL的下载 下载完成后解压 解压完是这个样子 配置初始化的my.ini文件的文件 ...

Python+OpenCV计算机视觉

Python+OpenCV计算机视觉系统全面的介绍。

Vue.js 2.0之全家桶系列视频课程

基于新的Vue.js 2.3版本, 目前新全的Vue.js教学视频,让你少走弯路,直达技术前沿! 1. 包含Vue.js全家桶(vue.js、vue-router、axios、vuex、vue-cli、webpack、ElementUI等) 2. 采用笔记+代码案例的形式讲解,通俗易懂

navicat(内含激活码)

navicat支持mysql的可视化操作,内涵激活码,不用再忍受弹框的痛苦。

HTML期末大作业

这是我自己做的HTML期末大作业,花了很多时间,稍加修改就可以作为自己的作业了,而且也可以作为学习参考

150讲轻松搞定Python网络爬虫

【为什么学爬虫?】 &nbsp; &nbsp; &nbsp; &nbsp;1、爬虫入手容易,但是深入较难,如何写出高效率的爬虫,如何写出灵活性高可扩展的爬虫都是一项技术活。另外在爬虫过程中,经常容易遇到被反爬虫,比如字体反爬、IP识别、验证码等,如何层层攻克难点拿到想要的数据,这门课程,你都能学到! &nbsp; &nbsp; &nbsp; &nbsp;2、如果是作为一个其他行业的开发者,比如app开发,web开发,学习爬虫能让你加强对技术的认知,能够开发出更加安全的软件和网站 【课程设计】 一个完整的爬虫程序,无论大小,总体来说可以分成三个步骤,分别是: 网络请求:模拟浏览器的行为从网上抓取数据。 数据解析:将请求下来的数据进行过滤,提取我们想要的数据。 数据存储:将提取到的数据存储到硬盘或者内存中。比如用mysql数据库或者redis等。 那么本课程也是按照这几个步骤循序渐进的进行讲解,带领学生完整的掌握每个步骤的技术。另外,因为爬虫的多样性,在爬取的过程中可能会发生被反爬、效率低下等。因此我们又增加了两个章节用来提高爬虫程序的灵活性,分别是: 爬虫进阶:包括IP代理,多线程爬虫,图形验证码识别、JS加密解密、动态网页爬虫、字体反爬识别等。 Scrapy和分布式爬虫:Scrapy框架、Scrapy-redis组件、分布式爬虫等。 通过爬虫进阶的知识点我们能应付大量的反爬网站,而Scrapy框架作为一个专业的爬虫框架,使用他可以快速提高我们编写爬虫程序的效率和速度。另外如果一台机器不能满足你的需求,我们可以用分布式爬虫让多台机器帮助你快速爬取数据。 &nbsp; 从基础爬虫到商业化应用爬虫,本套课程满足您的所有需求! 【课程服务】 专属付费社群+每周三讨论会+1v1答疑

三个项目玩转深度学习(附1G源码)

从事大数据与人工智能开发与实践约十年,钱老师亲自见证了大数据行业的发展与人工智能的从冷到热。事实证明,计算机技术的发展,算力突破,海量数据,机器人技术等,开启了第四次工业革命的序章。深度学习图像分类一直是人工智能的经典任务,是智慧零售、安防、无人驾驶等机器视觉应用领域的核心技术之一,掌握图像分类技术是机器视觉学习的重中之重。针对现有线上学习的特点与实际需求,我们开发了人工智能案例实战系列课程。打造:以项目案例实践为驱动的课程学习方式,覆盖了智能零售,智慧交通等常见领域,通过基础学习、项目案例实践、社群答疑,三维立体的方式,打造最好的学习效果。

基于STM32的电子时钟设计

时钟功能 还有闹钟功能,温湿度功能,整点报时功能 你值得拥有

学生成绩管理系统(PHP + MYSQL)

做的是数据库课程设计,使用的php + MySQL,本来是黄金搭配也就没啥说的,推荐使用wamp服务器,里面有详细的使用说明,带有界面的啊!呵呵 不行的话,可以给我留言!

面试了一个 31 岁程序员,让我有所触动,30岁以上的程序员该何去何从?

最近面试了一个31岁8年经验的程序猿,让我有点感慨,大龄程序猿该何去何从。

程序员的兼职技能课

获取讲师答疑方式: 在付费视频第一节(触摸命令_ALL)片头有二维码及加群流程介绍 限时福利 原价99元,今日仅需39元!购课添加小助手(微信号:itxy41)按提示还可领取价值800元的编程大礼包! 讲师介绍: 苏奕嘉&nbsp;前阿里UC项目工程师 脚本开发平台官方认证满级(六级)开发者。 我将如何教会你通过【定制脚本】赚到你人生的第一桶金? 零基础程序定制脚本开发课程,是完全针对零脚本开发经验的小白而设计,课程内容共分为3大阶段: ①前期将带你掌握Q开发语言和界面交互开发能力; ②中期通过实战来制作有具体需求的定制脚本; ③后期将解锁脚本的更高阶玩法,打通任督二脉; ④应用定制脚本合法赚取额外收入的完整经验分享,带你通过程序定制脚本开发这项副业,赚取到你的第一桶金!

实用主义学Python(小白也容易上手的Python实用案例)

原价169,限时立减100元! 系统掌握Python核心语法16点,轻松应对工作中80%以上的Python使用场景! 69元=72讲+源码+社群答疑+讲师社群分享会&nbsp; 【哪些人适合学习这门课程?】 1)大学生,平时只学习了Python理论,并未接触Python实战问题; 2)对Python实用技能掌握薄弱的人,自动化、爬虫、数据分析能让你快速提高工作效率; 3)想学习新技术,如:人工智能、机器学习、深度学习等,这门课程是你的必修课程; 4)想修炼更好的编程内功,优秀的工程师肯定不能只会一门语言,Python语言功能强大、使用高效、简单易学。 【超实用技能】 从零开始 自动生成工作周报 职场升级 豆瓣电影数据爬取 实用案例 奥运冠军数据分析 自动化办公:通过Python自动化分析Excel数据并自动操作Word文档,最终获得一份基于Excel表格的数据分析报告。 豆瓣电影爬虫:通过Python自动爬取豆瓣电影信息并将电影图片保存到本地。 奥运会数据分析实战 简介:通过Python分析120年间奥运会的数据,从不同角度入手分析,从而得出一些有趣的结论。 【超人气老师】 二两 中国人工智能协会高级会员 生成对抗神经网络研究者 《深入浅出生成对抗网络:原理剖析与TensorFlow实现》一书作者 阿里云大学云学院导师 前大型游戏公司后端工程师 【超丰富实用案例】 0)图片背景去除案例 1)自动生成工作周报案例 2)豆瓣电影数据爬取案例 3)奥运会数据分析案例 4)自动处理邮件案例 5)github信息爬取/更新提醒案例 6)B站百大UP信息爬取与分析案例 7)构建自己的论文网站案例

Java8零基础入门视频教程

这门课程基于主流的java8平台,由浅入深的详细讲解了java SE的开发技术,可以使java方向的入门学员,快速扎实的掌握java开发技术!

Python数据挖掘简易入门

&nbsp; &nbsp; &nbsp; &nbsp; 本课程为Python数据挖掘方向的入门课程,课程主要以真实数据为基础,详细介绍数据挖掘入门的流程和使用Python实现pandas与numpy在数据挖掘方向的运用,并深入学习如何运用scikit-learn调用常用的数据挖掘算法解决数据挖掘问题,为进一步深入学习数据挖掘打下扎实的基础。

零基础学C#编程—C#从小白到大咖

本课程从初学者角度出发,提供了C#从入门到成为程序开发高手所需要掌握的各方面知识和技术。 【课程特点】 1 由浅入深,编排合理; 2 视频讲解,精彩详尽; 3 丰富实例,轻松易学; 4 每章总结配有难点解析文档。 15大章节,228课时,1756分钟与你一同进步!

MySQL数据库面试题(2020最新版)

文章目录数据库基础知识为什么要使用数据库什么是SQL?什么是MySQL?数据库三大范式是什么mysql有关权限的表都有哪几个MySQL的binlog有有几种录入格式?分别有什么区别?数据类型mysql有哪些数据类型引擎MySQL存储引擎MyISAM与InnoDB区别MyISAM索引与InnoDB索引的区别?InnoDB引擎的4大特性存储引擎选择索引什么是索引?索引有哪些优缺点?索引使用场景(重点)...

多功能数字钟.zip

利用数字电子计数知识设计并制作的数字电子钟(含multisim仿真),该数字钟具有显示星期、24小时制时间、闹铃、整点报时、时间校准功能

极简JAVA学习营第四期(报名以后加助教微信:eduxy-1)

想学好JAVA必须要报两万的培训班吗? Java大神勿入 如果你: 零基础想学JAVA却不知道从何入手 看了一堆书和视频却还是连JAVA的环境都搭建不起来 囊中羞涩面对两万起的JAVA培训班不忍直视 在职没有每天大块的时间专门学习JAVA 那么恭喜你找到组织了,在这里有: 1. 一群志同道合立志学好JAVA的同学一起学习讨论JAVA 2. 灵活机动的学习时间完成特定学习任务+每日编程实战练习 3. 热心助人的助教和讲师及时帮你解决问题,不按时完成作业小心助教老师的家访哦 上一张图看看前辈的感悟: &nbsp; &nbsp; 大家一定迫不及待想知道什么是极简JAVA学习营了吧,下面就来给大家说道说道: 什么是极简JAVA学习营? 1. 针对Java小白或者初级Java学习者; 2. 利用9天时间,每天1个小时时间; 3.通过 每日作业 / 组队PK / 助教答疑 / 实战编程 / 项目答辩 / 社群讨论 / 趣味知识抢答等方式让学员爱上学习编程 , 最终实现能独立开发一个基于控制台的‘库存管理系统’ 的学习模式 极简JAVA学习营是怎么学习的? &nbsp; 如何报名? 只要购买了极简JAVA一:JAVA入门就算报名成功! &nbsp;本期为第四期极简JAVA学习营,我们来看看往期学员的学习状态: 作业看这里~ &nbsp; 助教的作业报告是不是很专业 不交作业打屁屁 助教答疑是不是很用心 &nbsp; 有奖抢答大家玩的很嗨啊 &nbsp; &nbsp; 项目答辩终于开始啦 &nbsp; 优秀者的获奖感言 &nbsp; 这是答辩项目的效果 &nbsp; &nbsp; 这么细致的服务,这么好的氛围,这样的学习效果,需要多少钱呢? 不要1999,不要199,不要99,只要9.9 是的你没听错,只要9.9以上所有就都属于你了 如果你: 1、&nbsp;想学JAVA没有基础 2、&nbsp;想学JAVA没有整块的时间 3、&nbsp;想学JAVA没有足够的预算 还等什么?赶紧报名吧,抓紧抢位,本期只招300人,错过只有等时间待定的下一期了 &nbsp; 报名请加小助手微信:eduxy-1 &nbsp; &nbsp;

Python可以这样学(第一季:Python内功修炼)

董付国系列教材《Python程序设计基础》、《Python程序设计(第2版)》、《Python可以这样学》配套视频,讲解Python 3.5.x和3.6.x语法、内置对象用法、选择与循环以及函数设计与使用、lambda表达式用法、字符串与正则表达式应用、面向对象编程、文本文件与二进制文件操作、目录操作与系统运维、异常处理结构。

Java基础知识面试题(2020最新版)

文章目录Java概述何为编程什么是Javajdk1.5之后的三大版本JVM、JRE和JDK的关系什么是跨平台性?原理是什么Java语言有哪些特点什么是字节码?采用字节码的最大好处是什么什么是Java程序的主类?应用程序和小程序的主类有何不同?Java应用程序与小程序之间有那些差别?Java和C++的区别Oracle JDK 和 OpenJDK 的对比基础语法数据类型Java有哪些数据类型switc...

机器学习实战系列套餐(必备基础+经典算法+案例实战)

机器学习实战系列套餐以实战为出发点,帮助同学们快速掌握机器学习领域必备经典算法原理并结合Python工具包进行实战应用。建议学习顺序:1.Python必备工具包:掌握实战工具 2.机器学习算法与实战应用:数学原理与应用方法都是必备技能 3.数据挖掘实战:通过真实数据集进行项目实战。按照下列课程顺序学习即可! 课程风格通俗易懂,用最接地气的方式带领大家轻松进军机器学习!提供所有课程代码,PPT与实战数据,有任何问题欢迎随时与我讨论。

Java面试题大全(2020版)

发现网上很多Java面试题都没有答案,所以花了很长时间搜集整理出来了这套Java面试题大全,希望对大家有帮助哈~ 本套Java面试题大全,全的不能再全,哈哈~ 一、Java 基础 1. JDK 和 JRE 有什么区别? JDK:Java Development Kit 的简称,java 开发工具包,提供了 java 的开发环境和运行环境。 JRE:Java Runtime Environ...

程序员垃圾简历长什么样?

已经连续五年参加大厂校招、社招的技术面试工作,简历看的不下于万份 这篇文章会用实例告诉你,什么是差的程序员简历! 疫情快要结束了,各个公司也都开始春招了,作为即将红遍大江南北的新晋UP主,那当然要为小伙伴们做点事(手动狗头)。 就在公众号里公开征简历,义务帮大家看,并一一点评。《启舰:春招在即,义务帮大家看看简历吧》 一石激起千层浪,三天收到两百多封简历。 花光了两个星期的所有空闲时...

深度学习原理+项目实战+算法详解+主流框架(套餐)

深度学习系列课程从深度学习基础知识点开始讲解一步步进入神经网络的世界再到卷积和递归神经网络,详解各大经典网络架构。实战部分选择当下最火爆深度学习框架PyTorch与Tensorflow/Keras,全程实战演示框架核心使用与建模方法。项目实战部分选择计算机视觉与自然语言处理领域经典项目,从零开始详解算法原理,debug模式逐行代码解读。适合准备就业和转行的同学们加入学习! 建议按照下列课程顺序来进行学习 (1)掌握深度学习必备经典网络架构 (2)深度框架实战方法 (3)计算机视觉与自然语言处理项目实战。(按照课程排列顺序即可)

HoloLens2开发入门教程

本课程为HoloLens2开发入门教程,讲解部署开发环境,安装VS2019,Unity版本,Windows SDK,创建Unity项目,讲解如何使用MRTK,编辑器模拟手势交互,打包VS工程并编译部署应用到HoloLens上等。

几率大的Redis面试题(含答案)

本文的面试题如下: Redis 持久化机制 缓存雪崩、缓存穿透、缓存预热、缓存更新、缓存降级等问题 热点数据和冷数据是什么 Memcache与Redis的区别都有哪些? 单线程的redis为什么这么快 redis的数据类型,以及每种数据类型的使用场景,Redis 内部结构 redis的过期策略以及内存淘汰机制【~】 Redis 为什么是单线程的,优点 如何解决redis的并发竞争key问题 Red...

MFC一站式终极全套课程包

该套餐共包含从C小白到C++到MFC的全部课程,整套学下来绝对成为一名C++大牛!!!

【数据结构与算法综合实验】欢乐连连看(C++ & MFC)案例

这是武汉理工大学计算机学院数据结构与算法综合实验课程的第三次项目:欢乐连连看(C++ & MFC)迭代开发代码。运行环境:VS2017。已经实现功能:开始游戏、消子、判断胜负、提示、重排、计时、帮助。

YOLOv3目标检测实战:训练自己的数据集

YOLOv3是一种基于深度学习的端到端实时目标检测方法,以速度快见长。本课程将手把手地教大家使用labelImg标注和使用YOLOv3训练自己的数据集。课程分为三个小项目:足球目标检测(单目标检测)、梅西目标检测(单目标检测)、足球和梅西同时目标检测(两目标检测)。 本课程的YOLOv3使用Darknet,在Ubuntu系统上做项目演示。包括:安装Darknet、给自己的数据集打标签、整理自己的数据集、修改配置文件、训练自己的数据集、测试训练出的网络模型、性能统计(mAP计算和画出PR曲线)和先验框聚类。 Darknet是使用C语言实现的轻型开源深度学习框架,依赖少,可移植性好,值得深入探究。 除本课程《YOLOv3目标检测实战:训练自己的数据集》外,本人推出了有关YOLOv3目标检测的系列课程,请持续关注该系列的其它课程视频,包括: 《YOLOv3目标检测实战:交通标志识别》 《YOLOv3目标检测:原理与源码解析》 《YOLOv3目标检测:网络模型改进方法》 敬请关注并选择学习!

u-boot-2015.07.tar.bz2

uboot-2015-07最新代码,喜欢的朋友请拿去

php+mysql学生成绩管理系统

学生成绩管理系统,分三个模块:学生,教师和管理员。 管理员模块:负责学生、老师信息的增删改;发布课程信息的增删改,以便让学生选课;审核老师提交的学生成绩并且打印成绩存档;按照课号查询每个课号的学生成绩

相关热词 c#跨线程停止timer c#批量写入sql数据库 c# 自动安装浏览器 c#语言基础考试题 c# 偏移量打印是什么 c# 绘制曲线图 c#框体中的退出函数 c# 按钮透明背景 c# idl 混编出错 c#在位置0处没有任何行
立即提问