注册
环信即时通讯云

环信即时通讯云

单聊、群聊、聊天室...
环信开发文档

环信开发文档

元宇宙讨论

元宇宙讨论

元宇宙到底是什么?来畅所欲言
RTE开发者社区

RTE开发者社区

汇聚音视频领域技术干货,分享行业资讯
技术讨论区

技术讨论区

技术交流、答疑
资源下载

资源下载

收集了海量宝藏开发资源
iOS Library

iOS Library

不需要辛辛苦苦的去找轮子, 这里都有
Android Library

Android Library

不需要辛辛苦苦的去找轮子, 这里都有
0
评论

【Flutter 异步编程 - 壹】 | 单线程下的异步模型 Flutter

王二蛋和他的张大花 发表了文章 • 124 次浏览 • 2022-09-19 10:55 • 来自相关话题

本文为稀土掘金技术社区首发签约文章,14天内禁止转载,14天后未获授权禁止转载,侵权必究! 一、 本专栏图示概念规范 本专栏是对 异步编程 的系统探索,会通过各个方面去认知、思考 异步编程 的概念。期间会用到一些图片进行表达与示意,在一开始先对图中的元素和 ... ...查看全部
0
评论

栈都知道,单调栈有了解吗? 单调栈

王二蛋和他的张大花 发表了文章 • 128 次浏览 • 2022-09-19 10:53 • 来自相关话题

前言 大家好,我是小彭。 今天分享到一种栈的衍生数据结构 —— 单调栈(Monotonic Stack)。栈(Stack)是一种满足后进先出(LIFO)逻辑的数据结构,而单调栈实际上就是在栈的基础上增加单调的性质(单调递增或单调递减)。那么,单调栈是用来解决什... ...查看全部
0
评论

不用架构会怎么样?—— 在项目实战中探索架构演进(一) 架构

王二蛋和他的张大花 发表了文章 • 133 次浏览 • 2022-09-19 10:48 • 来自相关话题

复杂度 软件的首要技术使命是“管理复杂度” —— 《代码大全》 因为低复杂度才能降低理解成本和沟通难度,提升应对变更的灵活性,减少重复劳动,最终提高代码质量。 架构的目的在于“将复杂度分层” 复杂度为什么要被分层? 若不分层,复杂度会在同一层次展开,这... ...查看全部
1
评论

五子棋AI进阶:极大极小值搜索 AI

王二蛋和他的张大花 发表了文章 • 118 次浏览 • 2022-09-16 13:59 • 来自相关话题

前言 上篇文章,介绍了一下五子棋 AI 的入门实现,学完之后能用,就是 AI 还太年轻,只能思考一步棋。 本文将介绍一种提高 AI 思考能力的算法:极大极小值算法。 Minimax算法 又名极小化极大算法,是一种找出失败的最大可能性中的最小值的算法(即最小... ...查看全部
0
评论

教你写一个入门级别的五子棋AI AI

王二蛋和他的张大花 发表了文章 • 122 次浏览 • 2022-09-16 13:56 • 来自相关话题

前言 本文只是介绍五子棋AI的实现,最终的成品只是一个 AI 接口,并不包括 GUI,且不依赖 GUI。 五子棋 AI 的实现并不难,只需要解决一个问题就行: 怎么确定AI的最佳落子位置? 一般情况下,五子棋棋盘是由15条横线和15条纵线组合而成的,15... ...查看全部
0
评论

灯泡开关 Ⅱ : 分情况讨论 LeetCode 算法

王二蛋和他的张大花 发表了文章 • 122 次浏览 • 2022-09-16 13:55 • 来自相关话题

题目描述 这是 LeetCode 上的 672. 灯泡开关 Ⅱ ,难度为 中等。 Tag : 「脑筋急转弯」、「找规律」 房间中有 n 只已经打开的灯泡,编号从 1 到 n 。墙上挂着 4 个开关 。 这 4 个开关各自都具有不同的功能,其中: 开... ...查看全部
0
评论

Android 闪屏页适配 闪屏页

王二蛋和他的张大花 发表了文章 • 128 次浏览 • 2022-09-16 13:50 • 来自相关话题

遇到的坑 按官方文档设置完之后,debug运行,或者直接点击Run运行,闪屏页的logo不显示,清掉后台,从桌面点击启动logo才显示,不过设置的windowBackgroud 都是显示正常的,这个问题我调了一天,,,AndroidStudio版本4.2.2... ...查看全部
0
评论

Android将倒计时做到极致 倒计时

王二蛋和他的张大花 发表了文章 • 141 次浏览 • 2022-09-16 13:48 • 来自相关话题

前言 倒计时的实现有很多方式,我觉得分享这个技术的关键在于有些官方的,甚至第三方的,也许能帮我实现99%的效果,但是当你从99%优化到100%,哪怕这1%微不足道,但你能从这个过程中得到的东西远远比你想象中的要多。 已有倒计时方案存在的问题 在开发倒计时功能时... ...查看全部
0
评论

白话ThreadLocal原理 ThreadLocal

王二蛋和他的张大花 发表了文章 • 163 次浏览 • 2022-09-15 16:14 • 来自相关话题

ThreadLocal作用 对于Android程序员来说,很多人都是在学习消息机制时候了解到ThreadLocal这个东西的。那它有什么作用呢?官方文档大致是这么描述的: ThreadLocal提供了线程局部变量 每个线程都拥有自己的变量副本,可以通过Thr... ...查看全部
0
评论

一类有趣的无限缓存OOM现象 OOM

王二蛋和他的张大花 发表了文章 • 159 次浏览 • 2022-09-15 14:59 • 来自相关话题

首先想必大家都知道OOM是啥吧,我就不扯花里胡哨的了,直接进入正题。先说一个背景故事,我司app扫码框架用的zxing,在很长一段时间以前,做过一系列的扫码优化,稍微列一下跟今天主题相关的改动:串行处理改成并发处理,zxing的原生处理流程是通过CameraM... ...查看全部
0
评论

2022 年 App 上架审核问题集锦,全面踩坑上线不迷路 上架审核

王二蛋和他的张大花 发表了文章 • 194 次浏览 • 2022-09-15 14:57 • 来自相关话题

相信这几年负责过上架应用市场的 App 开发,或多或少都躺过上线审核的坑,经历过的各种问题也是千奇百怪,今天就给大家做个汇总,希望可以帮助大家少走弯路,争取做一个“优雅”的客户端开发。 首先,近年来为了 “净化” App 环境、保护用户隐私和优化用户体验,各部... ...查看全部
0
评论

毕业5年了还不知道热修复? 热修复

王二蛋和他的张大花 发表了文章 • 136 次浏览 • 2022-09-14 14:57 • 来自相关话题

前言 热修复到现在2022年已经不是一个新名词,但是作为Android开发核心技术栈的一部分,我这里还得来一次冷饭热炒。 随着移动端业务复杂程度的增加,传统的版本更新流程显然无法满足业务和开发者的需求, 热修复技术的推出在很大程度上改善了这一局面。国内大部分成... ...查看全部
0
评论

LinkedList源码解析 LinkedList

王二蛋和他的张大花 发表了文章 • 161 次浏览 • 2022-09-14 14:55 • 来自相关话题

LinkedList源码解析 目标 理解LinkedList底层数据结构 深入源码掌握LinkedList查询慢,新增快的原因 1.简介 List 接口的链接列表实现。实现所有可选的列表操作,并且允许所有元素(包括 null )。除了实现 List 接口外... ...查看全部
0
评论

最安全的加密算法 Bcrypt,再也不用担心数据泄密了~ 加密算法

王二蛋和他的张大花 发表了文章 • 188 次浏览 • 2022-09-14 14:53 • 来自相关话题

这是《Spring Security 进阶》专栏的第三篇文章,给大家介绍一下Spring Security 中内置的加密算法BCrypt,号称最安全的加密算法,究竟有着什么魔力能让黑客闻风丧胆 哈希(Hash)与加密(Encrypt) 哈希(Hash)是将目标... ...查看全部
0
评论

Android DIY你的菜单栏 Android

王二蛋和他的张大花 发表了文章 • 130 次浏览 • 2022-09-14 14:48 • 来自相关话题

前言个人打算开发个视频编辑的APP,然后把一些用上的技术总结一下,这次主要是APP的底部菜单栏用到了一个自定义View去绘制实现的,所以这次主要想讲讲自定义View的一些用到的点和自己如何去DIY一个不一样的自定义布局。实现的效果和思路可以先看看实现的效果两个... ...查看全部
0
评论

Kotlin中 Flow、SharedFlow与StateFlow区别 StateFlow SharedFlow flow kotlin

王二蛋和他的张大花 发表了文章 • 195 次浏览 • 2022-09-14 14:43 • 来自相关话题

一、简介 了解过协程Flow 的同学知道是典型的冷数据流,而SharedFlow与StateFlow则是热数据流。 冷流:只有当订阅者发起订阅时,事件的发送者才会开始发送事件。 热流:不管订阅者是否存在,只要发送了事件就会被消费,意思是不管接受方是... ...查看全部
0
评论

Kotlin 协程 Select:看我如何多路复用 协程 Select kotlin

王二蛋和他的张大花 发表了文章 • 155 次浏览 • 2022-09-13 11:01 • 来自相关话题

前言协程通信三剑客:Channel、Select、Flow,上篇已经分析了Channel的深水区,本篇将会重点分析Select的使用及原理。通过本篇文章,你将了解到:Select 的引入Select 的使用Invoke函数 的妙用Select 的原理Selec... ...查看全部
0
评论

Kotlin协程:flowOn与线程切换 flowOn kotlin 协程

王二蛋和他的张大花 发表了文章 • 188 次浏览 • 2022-09-13 10:57 • 来自相关话题

    本文分析示例代码如下: launch(Dispatchers.Main) { flow { emit(1) emit(2) }.flowOn(Dispatchers.IO).collect { del... ...查看全部
0
评论

Koltin协程:Flow的触发与消费 协程 Koltin flow

王二蛋和他的张大花 发表了文章 • 162 次浏览 • 2022-09-13 10:55 • 来自相关话题

    本文分析示例代码如下: launch(Dispatchers.Main) { val task = flow { emit(2) emit(3) }.onEach { ... ...查看全部
0
评论

Kotlin Sealed Class 太香了,Java 8 也想用怎么办? kotlin Sealed

王二蛋和他的张大花 发表了文章 • 181 次浏览 • 2022-09-02 10:40 • 来自相关话题

为避免数据在分发过程中被恶意篡改,Kotlin 将 SealedClass 参数设置为 val 即可,Java 17 以下未引入 SealedClass,且若实现 Kotlin val 同等效果,样板代码瞬间飙出许多,等于解决了数据一致性的同时,滋生了更多 “... ...查看全部
0
评论

Compose制作“抖音”、“快手”视频进度条Loading动画效果 Loading compose

王二蛋和他的张大花 发表了文章 • 231 次浏览 • 2022-09-02 10:36 • 来自相关话题

现在互联网产品,感觉谁家的App不整点视频功能,严格意义上都不能说是一个现代互联网App了😂,我们知道最火的是抖音、快手这类短视频App,在刷视频的同时,他们的App交互上面的一些特色能让我们一直沉浸在刷视频中; 比如,我们今天要聊的,短视频翻页流列表,视频加... ...查看全部
0
评论

Kotlin学习快速入门—— 属性委托 属性委托 kotlin

王二蛋和他的张大花 发表了文章 • 181 次浏览 • 2022-09-02 10:34 • 来自相关话题

委托其实是一种设计模式,但Kotlin把此特性编写进了语法中,可以方便开发者快速使用,本篇也来具体讲解下关于Kotlin中属性委托的使用 委托对应的关键字是by 属性委托 先讲下属性委托吧,首先,复习下kotlin中设置set和get方法 默认的set和get... ...查看全部
0
评论

Flutter开发·async await原理解析 await async

王二蛋和他的张大花 发表了文章 • 182 次浏览 • 2022-09-02 10:27 • 来自相关话题

async await 与 Future 在异步调用中有三个关键词,async、await、Future,其中async和await需要一起使用。在Dart中可以通过async和await进行异步操作,async表示开启一个异步操作,也可以返回一个Futu... ...查看全部
0
评论

android 自定义View: 视差动画 Android 视差动画

王二蛋和他的张大花 发表了文章 • 186 次浏览 • 2022-09-01 10:51 • 来自相关话题

废话不多说,先来看今天要完成的效果: 在上一篇:android setContentView()解析中我们介绍了,如何通过Factory2来自己解析View, 那么我们就通过这个机制,来完成今天的效果《视差动画》, 回顾 先来回顾一下如何在Fragment中... ...查看全部
0
评论

Flutter EventBus事件总线的应用 eventbus

王二蛋和他的张大花 发表了文章 • 193 次浏览 • 2022-09-01 10:47 • 来自相关话题

前言 flutter项目中,有许多可以实现跨组件通讯的方案,其中包括InheritedWidget,Notification,EventBus等。本文主要探讨的是EventBus事件总线实现跨组件通讯的方法。 EventBus的简介 EventBus的核心是基... ...查看全部
0
评论

Flutter 状态管理 | 业务逻辑与构建逻辑分离 状态管理 Flutter

王二蛋和他的张大花 发表了文章 • 193 次浏览 • 2022-09-01 10:45 • 来自相关话题

1. 业务逻辑和构建逻辑 对界面呈现来说,最重要的逻辑有两个部分:业务数据的维护逻辑 和 界面布局的构建逻辑 。其中应用运行中相关数据的获取、修改、删除、存储等操作,就是业务逻辑。比如下面是秒表的三个界面,核心 数据 是秒表的时刻。在秒表应用执行功能时,数据的... ...查看全部
0
评论

Flutter 3.3 正式发布,快来看看有什么新功能吧 Flutter

王二蛋和他的张大花 发表了文章 • 231 次浏览 • 2022-09-01 10:43 • 来自相关话题

Flutter 3.3 正式发布啦,本次更新带来了 Flutter Web、桌面、文本性能处理等相关更新,另外,本次还为 go_router 、DevTools 和 VS Code 扩展引入了更多更新。 Framework Global Selection F... ...查看全部
0
评论

【开源 UI 组件】Flutter 图表范围选择器 图表 Flutter

王二蛋和他的张大花 发表了文章 • 217 次浏览 • 2022-08-24 10:58 • 来自相关话题

前言 最近有一个小需求:图表支持局部显示,如下底部的区域选择器支持 左右拖动调节中间区域 拖拽中间区域,可以进行移动 图表数据根据中间区域的占比进行显示部分数据 这样当图表的数据量过大,不宜全部展示时,可选择的局部展示就是个不错的解决方案。由于一般的图... ...查看全部
0
评论

这些flow常见API的使用,你一定需要掌握! flow

王二蛋和他的张大花 发表了文章 • 200 次浏览 • 2022-08-24 10:53 • 来自相关话题

collect通知flow执行 public suspend inline fun <T> Flow<T>.collect(crossinline action: suspend (value: T) -> Unit): Unit... ...查看全部
0
评论

Android通知 Notification的简单使用 notification

王二蛋和他的张大花 发表了文章 • 235 次浏览 • 2022-08-23 10:50 • 来自相关话题

在Android应用的开发中,必然会遇上通知的开发需求,本文主要讲一下Android中的通知 Notification的简单基本使用,主要包含创建通知渠道、初始化通知、显示通知、显示图片通知、通知点击、以及配合WorkManager发送延迟通知。Demo下载创... ...查看全部
0
评论

浅谈Kotlin编程-Kotlin空值处理 空值 kotlin

王二蛋和他的张大花 发表了文章 • 251 次浏览 • 2022-08-23 10:47 • 来自相关话题

前言 许多编程语⾔(包括 Java)中最常⻅的错误之⼀,就是访问空成员会导致空异常(NullPointerException 或简称 NPE)。 开发中,经常会遇到空指针异常,如果对这个问题处理不当,还会引起程序的崩溃(crash),在Kotlin中,为了避免... ...查看全部
0
评论

Compose制作一个“IOS”效果的SwitchButton SwitchButton compose

王二蛋和他的张大花 发表了文章 • 263 次浏览 • 2022-08-23 10:43 • 来自相关话题

本文一个定制样式的SwitchButton,使用Compose来写是非常容易的,下面先来看看我们对外提供如下方法: @Composeable fun IosSwitchButton( modifier: Modifier, checked: B... ...查看全部
0
评论

Flutter 的 build 系统(一) build

王二蛋和他的张大花 发表了文章 • 307 次浏览 • 2022-08-22 10:49 • 来自相关话题

前言对于Flutter开发者来说,build_runner 可以说并不是一个陌生的东西,很多package中就要求调用build_runner 来自动生成处理代码,比如说json_serializable;但正如其描述中所述的那样,其是通过 Dart... ...查看全部
0
评论

【Flutter】实现自定义TabBar主题色配置 TabBar Flutter

王二蛋和他的张大花 发表了文章 • 257 次浏览 • 2022-08-22 10:47 • 来自相关话题

需求背景 首页开发需求要求实现每个频道具备不同主题色风格,因此需要实现TabBar每个Tab具备自己主题色。Flutter官方提供TabBar组件只支持设置选中和非选中条件标签颜色并不支持配置不同更多不同配置色,TabBar组件配置项为labelColor和u... ...查看全部
0
评论

Flutter StatefulBuilder实现局部刷新 Flutter StatefulBuilder

王二蛋和他的张大花 发表了文章 • 311 次浏览 • 2022-08-22 10:46 • 来自相关话题

前言 flutter项目中,在页面数据较多的情况下使用全量刷新对性能消耗较大且容易出现短暂白屏的现象,出于性能和用户体验方面的考虑我们经常会使用局部刷新代替全量刷新进行页面更新操作。 GlobalKey、ValueNotifier和StreamBuilder等... ...查看全部
0
评论

翻车了,字节一道 Fragment面试题 fragment

王二蛋和他的张大花 发表了文章 • 204 次浏览 • 2022-08-18 10:52 • 来自相关话题

一道面试题 前段时间面试,面试官先问了一下fragment的生命周期,我一看这简单呀,直接按照下图回答 面试官点点头,然后问,如果Activity里面有一个fragment,那么启动他们时,他们的生命周期加载顺序是什么? 所以今天,我们好好了解了解这个用得... ...查看全部
0
评论

Android登录拦截的场景-面向切面基于AOP实现 AOP Android

王二蛋和他的张大花 发表了文章 • 305 次浏览 • 2022-08-18 10:49 • 来自相关话题

前言 场景如下:用户第一次下载App,点击进入首页列表,点击个人页面,需要校验登录,然后跳转到登录页面,注册/登录完成跳转到个人页面。 非常常见的场景,正常我们开发就只能判断是否已经登录,如果未登录就跳转到登录,然后登录完成之后怎么继续执行?如何封装?有哪些方... ...查看全部
0
评论

Flutter 语法进阶 | 深入理解混入类 mixin mixin Flutter

王二蛋和他的张大花 发表了文章 • 184 次浏览 • 2022-08-18 10:46 • 来自相关话题

混入类引言 混入类是 Dart 中独有的概念,它是 继承 、实现 之外的另一种 is-a 关系的维护方式。它和接口非常像,一个类支持混入多个类,但在本质上和接口还是有很大区别的。在感觉上来说,从耦合性来看,混入类像是 抽象类 和 接口 的中间地带。下面就来认识... ...查看全部
0
评论

Android 官方项目是怎么做模块化的?快来学习下 模块化

王二蛋和他的张大花 发表了文章 • 217 次浏览 • 2022-08-17 10:48 • 来自相关话题

概述模块化是将单一模块代码结构拆分为高内聚内耦合的多模块的一种编码实践。模块化的好处模块化有以下好处:可扩展性:在高耦合的单一代码库中,牵一发而动全身。模块化项目当采用关注点分离原则。这会赋予了贡献者更多的自主权,同时也强制执行架构模式。支持并行工作:模块化有... ...查看全部
0
评论

Kotlin 协程如何与 Java 进行混编? 混编 kotlin

王二蛋和他的张大花 发表了文章 • 286 次浏览 • 2022-08-17 10:44 • 来自相关话题

问题 在 Java 与 Kotlin 混编项目中大概率是会遇到 Kotlin 线程的使用问题。协程的混编相对于其他特性的使用上会相对麻烦而且比较容易踩坑。我们以获取 token 来举例,比如有一个获取 token 的 suspend 函数: // 常规的 su... ...查看全部
0
评论

最近很火的反调试,你知道它是什么吗? 反调试

王二蛋和他的张大花 发表了文章 • 226 次浏览 • 2022-08-17 10:42 • 来自相关话题

前言 我们日常开发中,永远离不开debug调试,断点技术一直是我们排查bug的有力手段之一!随着网络安全意识的逐步提高,对app安全的要求就越来越高,反调试的技术也渐渐深入我们开发者的眼帘,那么我们来具体看看,android中,同时也是linux内核中,是怎么... ...查看全部
0
评论

Android: Shape 的使用 自定义View Android

柳天明 发表了文章 • 191 次浏览 • 2022-08-16 16:18 • 来自相关话题

Android Shape 的使用 在Android开发中,我们可以使用shape定义各种各样的形状,也可以定义一些图片资源。相对于传统 图片来说,使用shape可以减少资源占用,减少安装包大小,还能够很好地适配不同尺寸的手机。 1. shape属性 sha... ...查看全部
0
评论

Android技术分享|【Android踩坑】怀疑人生,主线程修改UI也会崩溃? 主线程修改UI

王二蛋和他的张大花 发表了文章 • 171 次浏览 • 2022-08-16 15:42 • 来自相关话题

前言 某天早晨,吃完早餐,坐回工位,打开电脑,开启chrome,进入友盟页面,发现了一个崩溃信息: java.lang.RuntimeException: Unable to resume activity {com.youdao.youdaomath/com... ...查看全部
0
评论

Android性能优化 -- 大图治理 Android性能

王二蛋和他的张大花 发表了文章 • 166 次浏览 • 2022-08-16 10:49 • 来自相关话题

在实际的Android项目开发中,图片是必不可少的元素,几乎所有的界面都是由图片构成的;像列表页、查看大图页等,都是需要展示图片,而且这两者是有共同点的,列表展示的Item数量多,如果全部加载进来势必会造成OOM,因此列表页通常采用分页加载,加上Recycle... ...查看全部
0
评论

分享Kotlin协程在Android中的使用 协程 kotlin

王二蛋和他的张大花 发表了文章 • 246 次浏览 • 2022-08-16 10:42 • 来自相关话题

前言 之前我们学了几个关于协程的基础知识,本文将继续分享Kotlin协程的知识点~挂起,同时介绍协程在Android开发中的使用。 正文 挂起 suspend关键字 说到挂起,那么就会离不开suspend关键字,它是Kotlin中的一个关键字,它的中文意思是暂... ...查看全部
0
评论

Flutter中的ValueNotifier和ValueListenableBuilder ValueListenableBuilder ValueNotifier

王二蛋和他的张大花 发表了文章 • 215 次浏览 • 2022-08-16 10:38 • 来自相关话题

在这篇文章中,我们将深入探讨ValueNotifier及其相应的主题。 ValueNotifier简介 ValueNotifier是继承自ChangeNotifier的一个类。该类可以保存单个值,并每当其持有值更改时会通知正在监听它的Widget。ValueN... ...查看全部
0
评论

Java四大引用详解:强引用、软引用、弱引用、虚引用 引用

王二蛋和他的张大花 发表了文章 • 261 次浏览 • 2022-08-15 16:27 • 来自相关话题

面试官考察Java引用会问到强引用、弱引用、软引用、虚引用,具体有什么区别?本篇单独来详解 @mikechen Java引用 从JDK 1.2版本开始,对象的引用被划分为4种级别,从而使程序能更加灵活地控制对象的生命周期,这4种级别由高到低依次为:强引用、软引... ...查看全部
0
评论

神奇的共享内存 共享内存

王二蛋和他的张大花 发表了文章 • 223 次浏览 • 2022-08-15 10:53 • 来自相关话题

前言 共享内存(shared memory)是最常见的ipc进程之间通讯的方式之一了,很多linux书籍上,都将共享内存评价为“最有用的ipc机制”,就连Binder机制盛行的android体系,同样也离不开共享内存的应用!在所以ipc方式中,共享内存以“快”... ...查看全部
0
评论

Transform 被废弃,TransformAction 了解一下~ TransformAction transform

王二蛋和他的张大花 发表了文章 • 237 次浏览 • 2022-08-15 10:51 • 来自相关话题

前言 Transform API 是 AGP1.5 就引入的特性,主要用于在 Android 构建过程中,在 Class转Dex的过程中修改 Class 字节码。利用 Transform API,我们可以拿到所有参与构建的 Class 文件,然后可以借助ASM... ...查看全部
0
评论

使用 Kotlin 对 XML 文件解析、修改及创建 XML kotlin

王二蛋和他的张大花 发表了文章 • 180 次浏览 • 2022-08-15 10:49 • 来自相关话题

一 XML 基本概念 XML 全称 ExtensibleMarkupLanguage,中文称可扩展标记语言。它是一种通用的数据交换格式,具有平台无关性、语言无关性、系统无关性的优点,给数据集成与交互带来了极大的方便。XML 在不同的语言环境中解析方式都是一样的... ...查看全部