Latex 生成参考文献 及 无法生成参考文献原因

Latex 生成参考文献

BibTeX 是一个使用数据库的的方式来管理参考文献程序, 用于协调LaTeX的参考文献处理.

 

BibTeX 文件的后缀名为 .bib . 先来看一个例子:

@article{Gettys90,
author = {Jim Gettys and Phil Karlton and Scott McGregor},
title = {The {X} Window System, Version 11},
journal = {Software Practice and Experience},
volume = {20},
number = {S2},
year = {1990},
abstract = {A technical overview of the X11 functionality. This is an update of the X10 TOG paper by Scheifler \& Gettys.}
}

 

说明:

第一行@article 告诉 BibTeX 这是一个文章类型的参考文献. 还有其它格式, 例如 article, book, booklet, conference, inbook, incollection, inproceedings, manual, misc, mastersthesis, phdthesis, proceedings, techreport, unpublished 等等.
接下来的"Gettys90", 就是你在正文中引用这个条目的名称
.
其它就是参考文献里面的具体内容啦.


LaTeX中使用BibTeX
为了在 LaTeX 中使用BibTeX 数据库, 你必须先做下面三件事情:

1) 设置参考文献的类型 (bibliography style). 标准的为 plain:

\bibliographystyle{plain}

其它的类型包括unsrt – 基本上跟 plain 类型一样, 除了参考文献的条目的编号是按照引用的顺序, 而不是按照作者的字母顺序.
alpha –
类似于 plain 类型, 当参考文献的条目的编号基于作者名字和出版年份的顺序
.
abbrv –
缩写格式
.
2)
标记引用 (Make citations). 当你在文档中想使用引用时, 插入 LaTeX命令

\cite{引用文章名称}

"引用文章名称" 就是前边定义@article后面的名称.

3) 告诉 LaTeX 生成参考文献列表 . LaTeX 的结束前输入

\bibliography{bibfile}

这里bibfile 就是你的 BibTeX 数据库文件 bibfile.bib .

 

运行 BibTeX分为下面四步

1.LaTeX编译你的 .tex 文件 , 这是生成一个 .aux 的文件, 这告诉BibTeX 将使用那些引用.
2.
BibTeX 编译 .bib 文件
.
3.
再次用LaTeX 编译你的 .tex 文件, 这个时候在文档中已经包含了参考文献, 但此时引用的编号可能不正确
.
4.
最后用 LaTeX 编译你的 .tex 文件, 如果一切顺利的话, 这是所有东西都已正常了.


例子: 将上面的 BibTeX 的的例子保存为 bibfile.bib.

\documentclass{article}
\begin{document}
We cite \cite{name1} and \cite{name2}.
\bibliography{bibfile}
\bibliographystyle{plain}
\end{document}

将上面的内容保存为bibtex-example.tex .

latex编译一次, bibtex 编译一次, 再用 latex编译两次就大功告成了!

 

获取bib文件

使用如下网址可以将springer文献格式变成bibtex

http://www.it.usyd.edu.au/~niu/cgi-bin/springer.cgi

 

关于文献类型:(摘自TeXGuruLatex2e用户手册)
@article
条目为期刊或杂志上的一篇文章。
   
不可少域author, title, journal, year.
   
可省略域volume, number, pages, month, note.

@article{name,
 author = {a and b},
 title = {title},
 journal = {journal name},
 volume = {42},
 number = {1},
 year = {2008},
 issn = {0110-0101},
 pages = {1--8},
 doi = {http://doi.xxx.org},
 publisher = {ACM},
 address = {New York, NY, USA},
 };


@book条目为有确定出版社的书籍。
   
不可少域authoreditor, title, publisher, year.
   
可省略域volumenumber, series, address, edition, month, note.


@booklet条目为印制的有封皮的作品,但没有出版社或赞助机构的名称。
     
不可少域title.
   
可省略域author, howpublished, address, month, year, note.


@conference与下面的@inproceedings相同。


@inbook条目为一本书的一部分(章,节或某些页)
   
不可少域authoreditor, title, chapter/pages, publisher,year.
   
可省略域volumenumber, series, type, address, edition, month,note.


@incollection条目为一本书中有自己题目的一部分。
   
不可少域author, title, booktitle, publisher, year.
   
可省略域editor, volumenumber,series, type, chapter, pages,address, edition, month, note.


@inproceedings条目为会议论文集中的一篇文章。
   
不可少域author, title, booktitle, year.
   
可省略域editor, volume
number, series, pages, address, month,
                organization, publisher, note.

@InProceedings{b07name,
    author = {a and b},
    title = {title},
    booktitle = {Proceedings of the conference},
    address = {Sydney, Australia},
    month = Nov,
    year = 2008,
    pages = {1-2},
    affiliation = {Uni-name, Country},
    URL = {http://url/}
};


@manual条目为科技文档。
   
不可少域title.
   
可省略域author, organization, address, edition, month, year, note.


@mastersthesis条目为硕士论文。
   
不可少域author, title, school, year.
   
可省略域type, address, month, note.


@misc条目为不属于其它任何类型的作品。
   
不可少域没有。
     
可省略域author, title, howpublished, month, year, note.

@misc{name,
    author = "a",
    title = "title",
    howpublished = "Website",
    year = {2008},
    note = {\url{https://www.mysite.org}}
};


@phdthesis条目为博士论文。
   
不可少域author, title, school, year.
   
可省略域type, address, month, note.


@proceedings条目为会议论文集。
   
不可少域title, year.
   
可省略域editor,volume
number, series, address, month,
                organization, publisher, note.


@techreport条目为学校或其它研究机构印制的报告。
   
不可少域author, title, institution, year.
   
可省略域type, number, address, month, note.

@techreport{name,
 author = {a and b}
 title = {title},
 institution = {institution rpt no.}
 year = {2008}
};

 

@unpublished条目为有作者和标题的还未出版的作品。
   
不可少域author, title, note.
   
可省略域
month, year.
在每项条目中还可以有可省略域keycrossref

 无法生成参考文献原因

编辑和使用参考文献确实比较头疼,如果不小心的疏忽,文献列表中多写了,结果文中却没有引用,这样的错误是不能容忍的。 而且在写的过程中,自己常常弄不清格式,会议,书籍,url等多种格式,比较繁琐。

好在很多的期刊会议都会提供模板。 我这里使用的是CTEX的编辑工具,这里专门介绍使用bib文件来写参考文献, 它的好处就是你可以把很多参考文献写在bib文件中, 然后引用的时候比较方便,如果你使用某篇文献,那么它会在文中显示,反之, 它是在bib中出现, 文章中是不会出现的。 
而且使用这种方式编辑参考文献, 参考文献的顺序是按照字母排列的,也省去了整理参考文献的麻烦。
1. 由于模板不一样,所以在文中写的格式也不一样。 
如IEEE需要:
\bibliographystyle{IEEEtran}   
\bibliography{IEEEabrv,bare_conf}
第一行表示使用的bst文件, 这个不用管它。
第二行的第一个参数表示使用的bib文件, 第二个参数是你自己写的bib文件。

如果是其他的模板:
\bibliographystyle{ownbib}
只需这一句就可以,  参数就是自己的bib文件名。

2. 编译过程
首先  latex
然后  bib
最后  latex
这样就编译好了, 同时还会生成 bbl 和 aux文件
 
3. bib文件的编写
通常也就是会议,书籍,论文等几种格式。
一般情况下,网站都会提供该论文的参考文献格式, export citation ->选择bib格式->下载。
然后用记事本打开, 把所有找到的都粘在一个记事本内,然后,后缀改为bib。
总结一下通常的格式:
@INPROCEEDINGS{8,
author={Carbunar, B. and Grama, A. and Vitek, J.},
booktitle={Parallel and Distributed Systems, 2004. ICPADS 2004. Proceedings. Tenth International Conference on}, title={Distributed and dynamic voronoi overlays for coverage detection and distributed hash tables in ad-hoc networks},
year={2004},
month={july},
volume={},
number={},
pages={ 549 - 556},
keywords={ Voronoi diagram; ad hoc network; ad-hoc wireless network; coverage detection; coverage-boundary detection; distributed Voronoi overlays; distributed algorithm; distributed hash table; dynamic Voronoi overlays; ad hoc networks; computational geometry; distributed algorithms; file organisation;},
doi={10.1109/ICPADS.2004.1316137},
ISSN={1521-9097 },}
@INPROCEEDINGS是格式类型。 后面的第一个参数是自己在文中引用的标号。 例如在文中/cite{8}。
其他的格式有:@ARTICLE  @book

最后注意 ,bib文件, bst文件和自己的论文要在一个文件夹目录下或者给出明确的路径bib文件没必要和文章放在一个文件夹下,告诉路径就行了,例如

\bibliography{E:/xxx/bib_name}。 (谢谢赵振华的补充 )


再推荐赵振华的一个博文,非常好希望能对大家写作有帮助。 http://bbs.sciencenet.cn/home.php?mod=space&uid=117412&do=blog&id=288385
找到一个说明的很清楚的一个网址 http://www.csse.monash.edu.au/documents/bibtex/


 

 

  • 26
    点赞
  • 159
    收藏
    觉得还不错? 一键收藏
  • 6
    评论
### 回答1: LaTeX可以通过使用BibTeX来自动生成IEEE格式的参考文献。BibTeX是一种用于处理和管理参考文献数据库的工具,它和LaTeX配合使用可以方便地生成格式一致的参考文献。 首先,我们需要创建一个.bib文件来存储参考文献的信息。在这个文件中,每条参考文献都会有一个唯一的标识符,我们可以用这个标识符在LaTeX中引用它们。BibTeX支持多种参考文献条目类型,如文章、书籍和会议论文等。对于IEEE格式的参考文献,我们通常使用@article来表示文章、@inproceedings表示会议论文等。 在文档的适当位置,我们需要使用\cite{}命令在正文中引用参考文献。括号中的内容应该是要引用的参考文献在.bib文件中的标识符。例如,\cite{Smith2000}将引用.bib文件中标识为Smith2000的参考文献。 然后,在文档的末尾,我们可以使用\bibliographystyle{}命令来指定参考文献的格式。对于IEEE格式,我们可以使用\bibliographystyle{ieeetr}。然后,使用\bibliography{}命令来告诉LaTeX使用哪个.bib文件来生成参考文献列表。例如,\bibliography{references}将使用名为references.bib的文件。 最后,我们需要在LaTeX编译过程中运行BibTeX生成参考文献。具体来说,我们需要依次运行LaTeX、BibTeXLaTeX两次,以确保参考文献生成的文档中正确显示。 总而言之,通过使用BibTeX和指定适当的\bibliographystyle,我们可以方便地实现LaTeX自动生成IEEE格式的参考文献。 ### 回答2: LaTeX是一种排版系统,可以用于生成各种类型的文档,包括科学论文。IEEE格式是一种常用的学术论文参考文献格式,LaTeX提供了一些工具和宏包,可以自动化生成符合IEEE格式要求的参考文献。 在LaTeX生成IEEE格式的参考文献,我们可以使用BibTeX工具和相应的IEEEtran宏包。首先,我们需要一个包含参考文献信息的.bib文件。在这个文件中,每一条参考文献都有一个唯一的标识符,通过这个标识符可以在论文中引用该文献。 接下来,在LaTeX文档的适当位置插入如下代码: \documentclass{IEEEtran} \begin{document} \bibliographystyle{IEEEtran} \bibliography{参考文献文件} \end{document} 其中,\bibliographystyle命令指定了参考文献的格式,而\bibliography命令则指定了包含参考文献信息的.bib文件的名称。 在生成PDF文件时,我们需要按照下面的步骤进行操作: 1. 使用LaTeX编译器编译LaTeX源代码,生成.aux文件。 2. 使用BibTeX工具处理.aux文件,生成一个.bbl文件,其中包含了根据IEEE格式要求生成参考文献列表。 3. 再次使用LaTeX编译器编译LaTeX源代码,此时会读取.bbl文件,将参考文献插入到文档中。 4. 重复执行第2和第3步,直到文档中的交叉引用全部解决。 5. 最后一次使用LaTeX编译器编译LaTeX源代码,生成最终的PDF文件,其中包含了符合IEEE格式要求的参考文献。 需要注的是,以上的步骤需要在LaTeX中导入相应的宏包,并配置相应的选项。另外,我们还需要在论文中正确引用参考文献的标识符,以确保参考文献列表和论文内容的一致性。 总的来说,LaTeX通过BibTeX工具和IEEEtran宏包提供了自动生成IEEE格式的参考文献的功能,使得科研人员可以更加便捷地准确生成符合IEEE格式的参考文献。 ### 回答3: LaTeX是一种流行的排版系统,可以用来生成各种类型的文档,包括学术论文。对于生成IEEE格式的参考文献LaTeX提供了一些方便的工具和包,可以帮助我们自动格式化参考文献的样式。 在使用LaTeX生成IEEE格式的参考文献时,我们需要遵循如下的步骤: 1. 导入正确的包:在LaTeX的文档中,我们需要导入一些包来支持生成IEEE格式的参考文献。常用的包包括`biblatex`和`biber`。使用`\usepackage`命令将这些包导入到LaTeX文档中。 2. 定义参考文献的数据库:我们需要创建一个参考文献的数据库,其中包含了我们引用的文献信息。这些信息需要按照特定的格式进行组织,例如,每个条目需要包含作者、标题、出版地、出版社等信息。 3. 引用文献:在正文中,我们需要使用`\cite`命令引用参考文献。引用时,LaTeX会自动根据引用的参考文献信息,生成相应的IEEE格式的引用标记和编号。 4. 生成参考文献列表:在文档的适当位置,我们需要使用`\printbibliography`命令生成参考文献列表。这个命令会根据我们在数据库中定义的参考文献信息,自动生成满足IEEE格式要求的参考文献列表。 需要注的是,为了使用LaTeX生成IEEE格式的参考文献,我们需要将文档的编译过程进行一些调整。一般来说,我们需要使用`latex`命令编译LaTeX源文件,然后使用`biber`命令处理参考文献数据库,最后再次使用`latex`命令编译LaTeX源文件。 总之,借助LaTeX的强大功能和相应的包,我们可以很方便地生成符合IEEE格式的参考文献。通过正确导入包、定义参考文献数据库、引用文献以及生成参考文献列表,我们可以轻松完成这一任务。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 6
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值