java能播放什么格式的 Java的JMF包编写的视频播放器能播放AVI格式的文件吗
大家好,今天给各位分享java能播放什么格式的的一些知识,其中也会对Java的JMF包编写的视频播放器能播放AVI格式的文件吗进行解释,文章篇幅可能偏长,如果能碰巧解决你现在面临的问题,别忘了关注本站,现在就马上开始吧!
我用java做了个swing界面,怎么实现播放MP3格式的背景音乐
package mp3;
import java.awt.Color;
import java.awt.Container;
import java.awt.FileDialog;
import java.awt.event.MouseEvent;
import java.awt.event.MouseListener;
import java.io.IOException;
import java.util.ArrayList;
import java.util.List;
import java.util.Vector;
import javax.media.Controller;
import javax.media.Manager;
import javax.media.MediaLocator;
import javax.media.NoPlayerException;
import javax.media.Player;
import javax.swing.ImageIcon;
import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JList;
import javax.swing.JOptionPane;
import javax.swing.JPopupMenu;
import javax.swing.JScrollBar;
import javax.swing.JScrollPane;
import javax.swing.JTextField;
import javax.swing.JTextPane;
/**
*@param黄飞
* 2013.7.10
*/
public class Mp3 extends JFrame implements MouseListener
{
private JButton jbtAddSong,jbtRemove;//添加歌曲按钮,
private JList jliSong;//歌曲列表
private String directory="",up;//文件名字符串和文件路径字符串
private Player play;//播放
private JLabel jlbPlay,jlbUp,jlbBelow,jlbSuspend,jlbS,jlbPlay2,jlbUp2,jlbBelow2,jlbSuspend2,jlbBk,jlbm;//播放,上一首,下一首,暂停,顶上图片
private JScrollPane jscSong;//歌曲列表滚动条
Vector<String> vector= new Vector<String>();
public Mp3()
{
//框架的大小位置
this.setBounds(300, 50, 700, 600);
this.setTitle("梦游音乐");
Container con= this.getContentPane();
this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
con.setLayout(null);
//添加歌曲按钮
jbtAddSong= new JButton("添加歌曲");
jbtAddSong.setForeground(Color.blue);
jbtAddSong.setBackground(Color.black);
jbtAddSong.setBounds(0, 530, 100, 30);
jbtAddSong.addMouseListener(this);
con.add(jbtAddSong);
//删除歌曲按钮
jbtRemove= new JButton("删除歌曲");
jbtRemove.setForeground(Color.blue);
jbtRemove.setBackground(Color.black);
jbtRemove.setBounds(100, 530, 100, 30);
jbtRemove.addMouseListener(this);
con.add(jbtRemove);
//播放按钮标签
jlbPlay=new JLabel(new ImageIcon("src/image/播放1.jpg"));
jlbPlay.setBounds(51, 27, 44, 53);
jlbPlay.addMouseListener(this);
con.add(jlbPlay);
jlbPlay2=new JLabel(new ImageIcon("src/image/播放2.jpg"));
jlbPlay2.setBounds(51, 27, 44, 53);
jlbPlay2.addMouseListener(this);
jlbPlay2.setVisible(false);
con.add(jlbPlay2);
//暂停标签
jlbSuspend=new JLabel(new ImageIcon("src/image/停1.jpg"));
jlbSuspend.setBounds(51, 32, 50, 44);
jlbSuspend.addMouseListener(this);
con.add(jlbSuspend);
jlbSuspend2=new JLabel(new ImageIcon("src/image/停2.jpg"));
jlbSuspend2.setBounds(51, 32, 50, 44);
jlbSuspend2.addMouseListener(this);
jlbSuspend2.setVisible(false);
con.add(jlbSuspend2);
//歌曲列表.将列表放入滚动条区域
jliSong= new JList();
jliSong.setBounds(0, 79, 200, 450);
jscSong= new JScrollPane(jliSong);
jscSong.setBounds(0, 80,200, 450);
/*jliSong.setBackground(Color.);*/
con.add(jscSong);
//上一首
jlbUp= new JLabel(new ImageIcon("src/image/上1.jpg"));
jlbUp.setBounds(0, 30,51,46);
jlbUp.addMouseListener(this);
con.add(jlbUp);
jlbUp2= new JLabel(new ImageIcon("src/image/上2.jpg"));
jlbUp2.setBounds(0, 30,51,46);
jlbUp2.addMouseListener(this);
jlbUp2.setVisible(false);
con.add(jlbUp2);
//下一首
jlbBelow= new JLabel(new ImageIcon("src/image/下1.jpg"));
jlbBelow.setBounds(100, 30,51,46);
jlbBelow.addMouseListener(this);
con.add(jlbBelow);
jlbBelow2= new JLabel(new ImageIcon("src/image/下2.jpg"));
jlbBelow2.setBounds(100, 30,51,46);
jlbBelow2.addMouseListener(this);
jlbBelow2.setVisible(false);
con.add(jlbBelow2);
//梦
jlbm= new JLabel(new ImageIcon("src/image/梦5.gif"));
jlbm.setBounds(200,0,500,78);
con.add(jlbm);
//上面图片
jlbBk= new JLabel(new ImageIcon("src/image/上7.jpg"));
jlbBk.setBounds(0,0,700,78);
con.add(jlbBk);
//右边图片
jlbS= new JLabel(new ImageIcon("src/image/背6.jpg"));
jlbS.setBounds(200,55,500,650);
con.add(jlbS);
}
/**
*@param黄飞
* 2013.7.10
*/
public static void main(String[] args)
{
Mp3 mp3= new Mp3();//在本类新建一个对象实现上面的构造方法
mp3.setVisible(true);
}
public void mouseClicked(MouseEvent e){
//如果点击的是添加歌曲按钮
jliSong.setSelectionBackground(Color.black);
jliSong.setSelectionForeground(Color.lightGray);
if(e.getSource()== jbtAddSong)
{
/* System.out.println(play.());*/
FileDialog fd= new FileDialog(this,"打开媒体文件",FileDialog.LOAD);//显示一个对话框窗口,用户可以从中选择文件
fd.setVisible(true);
up= fd.getFile();//保存文件名
directory= fd.getDirectory();//保存文件路径
if(vector.contains(up))
{
JOptionPane.showMessageDialog(this,"你添加的歌曲已在列表");//提示客服端
}
else{
vector.add(up);//将文件名变量加入集合
jliSong.setListData(vector);//将集合放入列表
/*System.out.println(vector.get(i));//
i++;*/
}
}
//如果点击的是删除歌曲
else if(e.getSource()==jbtRemove)
{
try{
//通过所点击列表的元素获取对应名字,通过一样的索引获取集合中的对象
vector.remove(jliSong.getSelectedValue());//删除集合中的所选对象
//将新集合加入列表
jliSong.setListData(vector);
}
catch(ArrayIndexOutOfBoundsException e1)
{
}
}
//如果点击的是播放
else if(e.getSource()== jlbPlay)//如果点击的是播放标签
{
if(jliSong.getSelectedValue()!=null)//如果列表指示选择不为空
{
if(play!= null)//如果有正在播放的歌曲进去下面关闭
{
play.start();
//显示暂停图标
jlbPlay.setVisible(false);//当点击播放时隐藏播放图标
jlbSuspend.setVisible(true);
return;
}
else
{
try{
int i= vector.indexOf(jliSong.getSelectedValue());//获取列表中索引也是同时给集合获取索引
String up= vector.get(i);//通过索引获取元素
jliSong.setSelectedIndex(i);//指示跳到当前选择的列表元素
play= Manager.createPlayer(new MediaLocator("file:"+directory+ up));//播放由字符串形成的路径及歌曲
} catch(NoPlayerException e1)
{
e1.printStackTrace();
} catch(IOException e1)
{
e1.printStackTrace();
}
play.start();
jlbPlay.setVisible(false);//当点击播放时隐藏播放图标
jlbSuspend.setVisible(true);//显示暂停图标
}
}
}
//如果点击的是暂停
else if(e.getSource()== jlbSuspend)
{
if(play!= null)//如果有正在播放的歌曲进去下面关闭
{
play.stop();
jlbPlay.setVisible(true);//点击暂停时显示播放图标
jlbSuspend.setVisible(false);//隐藏暂停图标
}
return;
}
//如果点击的是下一首
else if(e.getSource()== jlbBelow)
{
if(play!= null)//如果有正在播放的歌曲进去下面关闭
{
play.close();
}
try{
int i= vector.indexOf(jliSong.getSelectedValue());//获取列表中索引也是同时给集合获取索引
String up= vector.get(i+1);//通过索引获取列表下一首歌
jliSong.setSelectedIndex(i+1);//使列表指示移到下一首歌曲
if(up!=null)
{
play= Manager.createPlayer(new MediaLocator("file:"+directory+up));//创建容器放入要播放的歌曲
play.start();//开始播放
jlbPlay.setVisible(false);//隐藏播放图标
jlbSuspend.setVisible(true);//显示暂停图标
}
}
catch(NoPlayerException e1)
{
e1.printStackTrace();
} catch(IOException e1)
{
e1.printStackTrace();
}
catch(ArrayIndexOutOfBoundsException e3)
{
if(up!=null)
{
String fris= vector.get(0);//获取列表集合的第一个对象
try{
play= Manager.createPlayer(new MediaLocator("file:"+directory+fris));//放入播放器
} catch(NoPlayerException e1)
{
// TODO自动生成 catch块
e1.printStackTrace();
} catch(IOException e1)
{
// TODO自动生成 catch块
e1.printStackTrace();
}//创建容器放入要播放的歌曲
play.start();//开始播放
jliSong.setSelectedIndex(0);//显示选择的是这个列表元素
jlbPlay.setVisible(false);//隐藏播放图标
jlbSuspend.setVisible(true);//显示暂停图标
}
}
}
//如果点击的是上一首
else if(e.getSource()== jlbUp)
{
if(play!= null)//如果有正在播放的歌曲进去下面关闭正在播放的歌曲
{
play.close();
}
try{
int i= vector.indexOf(jliSong.getSelectedValue());//获取列表中索引也是同时给集合获取索引
String up= vector.get(i-1);//通过索引获取下一首歌
jliSong.setSelectedIndex(i-1);//设计目前列表选择的歌曲
if(up!=null)
{
play= Manager.createPlayer(new MediaLocator("file:"+directory+up));
play.start();
jlbPlay.setVisible(false);
jlbSuspend.setVisible(true);
}
} catch(NoPlayerException e1)
{
e1.printStackTrace();
} catch(IOException e1)
{
e1.printStackTrace();
}
catch(ArrayIndexOutOfBoundsException e3)
{
try{
//创建容器放入要播放的歌曲
play= Manager.createPlayer(new MediaLocator("file:"+directory+up));
play.start();//开始播放
jliSong.setSelectedIndex(vector.indexOf(up));//播放最后一首歌曲
jlbPlay.setVisible(false);//隐藏播放图标
jlbSuspend.setVisible(true);//显示暂停图标
} catch(NoPlayerException e1)
{
e1.printStackTrace();
} catch(IOException e1)
{
e1.printStackTrace();
}
}
}
}
public void mouseEntered(MouseEvent e)
{
}
public void mouseExited(MouseEvent e){
}
public void mousePressed(MouseEvent e){
}
public void mouseReleased(MouseEvent e){
}
}
刚写完你运气好
Java的JMF包编写的视频播放器能播放AVI格式的文件吗
现在网上流传的AVI格式不是真正的AVI格式,是其他格式转化为AVI的,真正的AVI格式是原来录制影片的时候就采用的是AVI。另外Java的JMF并不是Sun公司的优势,Java的优势在网络编程方面~~JMF只能播放真正的AVI格式,通过转化的AVI格式是不能播放的~~建议楼主使用C#,VS中视频控件就强大很多~~其实熟悉编程之后,编程语言是殊途同归的~~语法也不尽相同的~
Java中输出语句的格式
Java中输出语句的格式
输出语句如果是:System.out.print(i),只打印想输出的内容不换行。输出语句如果是:System.out.println(i)。列印想输出的内容,列印完成后换行。
输出语句如果是:System.out.print(i+"\n")。列印想输出的内容,列印完成后换行。
输出语句如果是:System.out.print(i+"\t")。列印想输出的内容,列印完成后输入8个空格。
FORTRAN77中输出语句WRITE的格式?I代表整数,A代表的是字串,你的问题中的20A应该改成A20,I、A后面的数字表示整数和字串的限定长度。
这说明myid是两位整数,numprocs是一位整数,processor_name是个长度不超过20个字元的字串,这三个变数都会在这个输出语句前面赋值的。
write(*,10)这里的10就代表输出格式,它的形式下面有限定的10 FORMAT('hello world!process',I2,'of',I1,'on',A20)。
这里的方式已经是最简捷的了。
php输出语句echo的格式问题估计你是和JS混淆了,PHP里面+只是算数运算子,也就是说,只有数学加法的功能,没有JS里面那样的字元连线功能,PHP里面的字元连线用的是"点号"
你这俩句程式码的输出结果也很显然,第一个是a=10就是字串连线,第二个是 10,为什么呢
PHP会试图把“a=”转化成一个数值然后和后面的10相加,转换结果是0,0+10=10了
PS: PHP字元转换数值的原则是,从左开始如果是数字字串就一直找到非数字字串结尾,如果没有数字字元就转换成0,,比如"2a="+$a的结果就会是12
java输出语句的问题我来翻译给大家听,他的问题翻译成中文是这样的:
“java关于输出语句,输出哪些型别的必须加引号,哪些是不需要加引号的,加引号跟不加引号的区别是什么?”
一般输出String型别的需要加引号,但如果你输出的是个已赋值的string型别的变数,那就不用加引号了。
明白吗?
Java输出语句的问题这名字NB
for(int i= 0; i< values.length; i++){
int each= values[i];
System.out.print(each+"");
}
for(int each: values){
System.out.print(each+"");
}
c++输出语句的格式是什么,具体的意思是什么int s;
s=1;
cout<< s<< endl;输出: 1(endl会换行哦)
cout<<“s里的内容为:”<<s<<endl;输出: s里的内容为:1
cout<<“Hello!”;输出: Hello!
备注:不一定要整型的,S也可以为字串等。
关于JAVA的输出语句的问题System.out.println("5"+0);
System.out.println('5'+0);
"5"是字串。字串的加法的含义是字串拼接,如果后面的不是字串,则先转化为字串
'5'是字元,字元的加法是字元的 ASCII码加法
System.out.println('5'+ N);输出结果是在ASCII字元表中,从5开始数后面第N个字元。
典型的没学过C就直接上java的,基础不过关,这些基础应该先去学下C,了解最基础的知识(个人建议)
输出语句格式是什么console.writeline()
PHP中几种输出语句的不同echo输出字串效率高 print输出字串效率没echo高 printf函式输出格式化的字串 fprintf把格式化的字串写到指定的输出流 print_r var_dump
输入语句、输出语句和赋值语句的一般格式分别是什么?输出语句:printf"%d,a";
输入语句:scanf“%d,&a”;
赋值语句:a=5;
OK,本文到此结束,希望对大家有所帮助。