Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/321.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在Eclipse中为Java的try with resources设置括号之间的缩进_Java_Eclipse_Formatting_Indentation - Fatal编程技术网

在Eclipse中为Java的try with resources设置括号之间的缩进

在Eclipse中为Java的try with resources设置括号之间的缩进,java,eclipse,formatting,indentation,Java,Eclipse,Formatting,Indentation,我喜欢将Java的try与参考资料格式化如下: try ( FileInputStream input = new FileInputStream("data.txt"); BufferedInputStream buffer = new BufferedInputStream(input); InputStreamReader convert = new InputStreamReader(buffer); LineNumberReader pa

我喜欢将Java的try与参考资料格式化如下:

try
(
   FileInputStream     input   = new FileInputStream("data.txt");
   BufferedInputStream buffer  = new BufferedInputStream(input);
   InputStreamReader   convert = new InputStreamReader(buffer);
   LineNumberReader    parse   = new LineNumberReader(convert);
)
{
   // process the data in the file
}
首先,我在括号之间用插入符号写下以下内容:

try
(|)
然后按enter键,Eclipse将代码格式化为:

try
(
         )
右括号是9个空格。我的缩进设置设置为使用3个空格。当按下enter键时,如何配置Eclipse以执行以下操作

try
(

)

正如Edwin nice profile picture所说,eclipse的行为是这样的,因为大多数正常的代码都希望在这种情况下缩进

您可以通过进入“窗口>首选项>Java>编辑器>键入”禁用此功能,然后取消选中“回车”键以调整缩进部分下新行复选框上的缩进:

请注意,这将禁用所有的自动缩进功能,这似乎也会禁用一些不错的功能,比如插入闭合的花括号,所以这可能不值得


<>你也可以考虑通过进入Window >首选项> java >编辑器>模板来创建模板。您可能会修改现有的try模板,尽管我的快速修补表明,即使我没有选中上面的复选框,也会始终添加缩进。

这是由Java->Code Style->Formatter->Line Wrapping->wrapped lines的默认缩进控制的。设置为0以达到所需效果

不幸的是,AFAIK不可能根据上下文设置不同的缩进,也就是说,您不能仅为try设置缩进,而是为所有包装设置缩进

请参见几个相关问题:

它解决了问题,但正如您所注意到的,它还带来了几个问题。这种疗法不值得有副作用。这非常接近理想。在给出这个答案之前,我会等一等,以防万一有人会给出更好的答案。唯一的问题是该行没有缩进。哦,这比它写的8个字符好多了。