IDEA 在接入外接屏且扩展的情况下,如果突然拔掉外接屏,就可能会产生IDEA 整个窗口只在屏幕的右侧显示一点点边框且无法拖拽到当前屏幕的情况。

在不再次接入外接屏的情况下,想要把IDEA窗口拖拽回当前屏幕,可以找到项目中.idea 文件夹下的workspace.xml 文件
全文搜索ProjectFrameBounds 关键字,修改x和y的值为0或者直接将name="x",name="y"的这两行删除即可,然后重启IDEA即可

以上转自 https://blog.csdn.net/zhj870975587/article/details/80168736

因为经常遇到这种情况,所以自己写了个java 小工具,一键删除 name="x",name="y" 这两行记录,同时生成一个原始文件的.bak 文件,入参只需要文件路径

其中的核心代码逻辑示例如下:

(标签: 使用Java 实现删除某个文件中 包含特定字符的行)

  1 import java.io.*;
  2
  3 /**
  4  * @author jiashubing
  5  * @since 2019/5/22
  6  */
  7 public class DeleteLine {
  8     public static void main(String[] args) {
  9         String path = "C:\\Users\\jiashubing\\Desktop\\ttt\\workspace.xml";
 10         deleteLine(path);
 11     }
 12
 13     private static String deleteLine(String path) {
 14         int a = path.lastIndexOf('/');
 15         int b = path.lastIndexOf('\\');
 16         if (a < 0 && b < 0) {
 17             return "没有目录分隔符";
 18         }
 19
 20         //删除原来的备份文件
 21         String bakpath = path + ".bak";
 22         if (deleteFile(bakpath)) {
 23             return "删除原始的备份文件失败,备份文件为:" + bakpath;
 24         }
 25
 26         String bakpath2 = path + ".bak2";
 27         if (deleteFile(bakpath2)) {
 28             return "删除原始的临时备份文件失败,备份文件为:" + bakpath2;
 29         }
 30
 31         //创建临时备份文件
 32         File bakFile2 = new File(bakpath2);
 33         boolean nFlag = false;
 34         try {
 35             nFlag = bakFile2.createNewFile();
 36         } catch (IOException e) {
 37             return "创建临时备份文件失败,备份文件为:" + bakpath2 + "  错误信息为:" + e.getMessage();
 38         }
 39         if (!nFlag) {
 40             return "创建临时备份文件失败,备份文件为:" + bakpath2;
 41         }
 42
 43         String ans = getAns(path);
 44         if (ans == null) {
 45             return "读取并修改原始文件失败";
 46         }
 47
 48         if (!addNewFile(bakpath2, ans)) {
 49             return "将修改后的内容写入到新文件失败";
 50         }
 51
 52         File oldFile = new File(path);
 53         boolean mvFlag = oldFile.renameTo(new File(bakpath));
 54         if (!mvFlag) {
 55             return "将原始文件重命名成备份文件失败";
 56         }
 57
 58         boolean mvFlag2 = bakFile2.renameTo(new File(path));
 59         if (!mvFlag2) {
 60             return "将临时备份文件重命名成原始文件失败";
 61         }
 62
 63         return "执行成功";
 64     }
 65
 66     private static boolean deleteFile(String bakpath) {
 67         File bakFile = new File(bakpath);
 68         if (bakFile.exists() && bakFile.isFile()) {
 69             boolean delFlag = bakFile.delete();
 70             if (!delFlag) {
 71                 return true;
 72             }
 73         }
 74         return false;
 75     }
 76
 77     private static String getAns(String path) {
 78         File oldFile = new File(path);
 79         if (!oldFile.exists() || !oldFile.isFile()) {
 80             return null;
 81         }
 82
 83         StringBuilder ans = new StringBuilder();
 84         String encoding = "UTF-8";
 85         try (InputStreamReader read = new InputStreamReader(
 86                 new FileInputStream(oldFile), encoding);
 87              BufferedReader bufferedReader = new BufferedReader(read)) {
 88             String lineTxt = null;
 89             while ((lineTxt = bufferedReader.readLine()) != null) {
 90                 if (lineTxt.contains("name=\"x\"") || lineTxt.contains("name=\"y\"")) {
 91                     continue;
 92                 }
 93                 ans.append(lineTxt + "\n");
 94             }
 95         } catch (Exception e) {
 96             return null;
 97         }
 98
 99         return ans.toString();
100     }
101
102     private static boolean addNewFile(String path, String ans) {
103         File file = new File(path);
104
105         try (Writer out = new FileWriter(file)) {
106             out.write(ans);
107         } catch (IOException e) {
108             return false;
109         }
110
111         return true;
112     }
113 }

原创文章,欢迎转载,转载请注明出处!

转载于:https://www.cnblogs.com/acm-bingzi/p/idea_name_x.html

IntelliJ IDEA多屏后窗口不显示问题解决(用工具一键解决)相关推荐

  1. 解决电脑扩展屏后图标老是显示在副屏问题

    现象:解决电脑扩展屏后图标老是显示在副屏问题 思路:网上找了一些,花了2小时,分析各种原因.总结如下 这个是罪魁祸首,这个是左面图标强制恢复软件 如果你在扩展屏幕期间恢复的话,恢复在副屏后,就会一直显 ...

  2. 换屏后sim卡显示无服务器,iPhone更换屏幕后,最容易出现这个问题,小心!

    原标题:iPhone更换屏幕后,最容易出现这个问题,小心! - 问题1 - 朋友的iPhone7卡槽有一个黑色的橡胶圈,为什么我的6s没有? 那是因为iPhone7有一定的抗水防尘作用,SIM卡槽上的 ...

  3. 苹果天气不显示_苹果手机自行换屏后手机不显示?这点不注意,你的iPhone会报废...

    收到客户一台iPhone 6sp,客户描述自己换屏幕后忘记断电导致烧了,现在手机不显示.在实际维修中,自行更换屏幕.换电池导致主板受伤的不在少数,再次提醒大家,自行操作时一定小心!如果动手能力不强的话 ...

  4. win10锁屏后默认1分钟进入睡眠状态的解决办法

    问题描述 先说一下睡眠和关闭显示器的区别:睡眠时系统中的一部分程序会停止工作,当你唤醒时会有卡顿感.而关闭显示器的话,其实程序还是在工作的,仅仅是不显示了.从仅关闭显示器的状态唤醒时,体验会比较流畅. ...

  5. 搭建完菜单后运行不显示菜单的原因及其解决方法(拼图小游戏)

    文章目录 一.前言 二.问题描述 三.原因分析 1.代码分析 2.执行分析 3.核心原因(总结) 四.解决方案 五.正确代码演示 六.涉及知识点 七.结语 一.前言 本文将讲述了一个在搭建菜单以后运行 ...

  6. linux系统 安装ibus中文输入法后 重启ubuntu 显示不出来主页面解决办法

    ubuntu16.04,安装玩ibus输入法后,直接闪退.重启后在主页面输入密码之后,主页面显示的是一片空白,再也不能进行任何操作.找了很久才找到了有效的解决办法,需要重新安装gnome环境. 1.在 ...

  7. LabVIEW开发的上位机界面在其它电脑分辨率下-界面窗口偏移显示问题解决

    目录 问题: 分析: 解决方式 1)编辑前面板边界适配对应的分辨率 2)编辑前面板窗口-窗口边界 3)编辑前面板窗口-保持窗口比例 4)设置VI属性--窗口运行时位置居中显示 参考 问题: 在基于La ...

  8. IntelliJ IDEA 外接显示器 分屏后,窗口打不开,不会显示

    最近加班特别严重,眼和脖子都累,于是搞了个大的显示器,分屏显示真的爽,但是突然被拉去开了个会,回来后 idea就打不开了,任务栏有图标,就是点不开 经分析发现,并不是不显示,而是显示在了屏幕边缘一个不 ...

  9. 换屏后sim卡显示无服务器,话机屏幕上显示“插入SIM卡”、“SIM卡无效”、“请插入UIM卡”,“无法获得网络服务”或“紧急呼叫”...

    **问题现象:** 插入SIM卡后,话机屏幕上显示"插入SIM卡"."SIM卡无效"."请插入UIM卡","无法获得网络服务&qu ...

  10. Win10 扩展显示器后窗口不显示问题

    按win+shift+方向键 多试几次就出来了 真的是恼火 最新方案:https://blog.csdn.net/Jay_zjc/article/details/112620342?spm=1001. ...

最新文章

  1. 不少Java程序员都觉得Lambda表达式很鸡肋,它到底有何用呢?
  2. 关于顺序栈的基本操作
  3. C# 系统应用之通过注册表获取USB使用记录(一)
  4. java过滤器api_springboot集成过滤器
  5. [Leetcode][第257题][JAVA][二叉树的所有路径][BFS][DFS]
  6. 【解决问题】useBean类属性[com.cheng.pojo.People]的值无效导致HTTP500问题
  7. 线性代数拾遗(五):矩阵变换的应用
  8. python如何制作登录密码_python实战系列之模拟用户密码登陆系统(一)
  9. phalapi-进阶篇3(自动加载和拦截器)
  10. spring hibernate druid mysql_使用Spring4的JavaConfig整合Druid Hibernate4.3
  11. 2.1 API : LogisticRegression
  12. 字节、快手、阿里、腾讯这两年的广告推荐技术进展
  13. 利用 ASP.NET 2.0 中的 Web 部件和个性化释放站点的潜能 --作者:Steven A. Smith
  14. .net 导出excel_.NET Core一行代码导入导出Excel生成Word
  15. 萤火虫算法_一种优化方法:蜂鸟优化算法
  16. R329开发板系列教程之二|实机运行aipu程序
  17. ElasticSearch搜索引擎原理,都给你整理好了
  18. 国美易卡借助互联网,国美易卡搭建风控、运营、营销体系
  19. numpy dot用法解释
  20. 利用DirectShow开发C#版的音频文件播放器(补充完善)

热门文章

  1. Reflector:.NET反编译工具及导出CS文件插件
  2. To shade or not to shade
  3. 基础算法----实现反转字符串
  4. vim编辑器的基本使用
  5. 数论知识(2)-------------欧拉函数
  6. [征求意见]关于收录精华区文章的标准
  7. 生成订单30分钟未支付,则自动取消,该怎么实现?原来大公司的最有解是这样的!...
  8. 你这API设计的真”辣鸡“,简直没法看!
  9. 工作 3 年就是高级,这就是差距啊
  10. 资深程序员是用五年时间攒够100万,老婆是关键